FriendChatInput.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using UnityEngine;
  2. using UnityEngine.UI;
  3. using System.Collections;
  4. public class FriendChatInput : MonoBehaviour
  5. {
  6. public InputField inputField;
  7. public int targetId;
  8. void Start()
  9. {
  10. (inputField.placeholder as Text).text = Language.GetStr ("ChatPanel", "placeholder");
  11. inputField.onValidateInput = StringUtil.InputValidateHandler;
  12. }
  13. public void OnInputChanged()
  14. {
  15. inputField.text = StringUtil.LimitInput (inputField.text, Config.MAX_CHAT_LENGTH);
  16. }
  17. public void StartTap()
  18. {
  19. inputField.ActivateInputField ();
  20. }
  21. public void Send()
  22. {
  23. if (!StringUtil.Empty (inputField.text)) {
  24. DealSend (inputField.text);
  25. inputField.text = "";
  26. }
  27. }
  28. private void DealSend(string content)
  29. {
  30. ChatRequest.SendFollowMsg (targetId, content).ResultEvent.AddListener ((bool success, LitJson.JsonData data) => {
  31. if(success)
  32. {
  33. int id = JsonUtil.ToInt(data["id"]);
  34. int receiver = JsonUtil.ToInt(data["receiver"]);
  35. string time = data["time"].ToString();
  36. ChatManager.GetInstance().AddMyFollowMsg(id, receiver, content, time);
  37. }
  38. });
  39. }
  40. }