DeviceInfo_Item.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Blue;
  2. using UnityEngine;
  3. using UnityEngine.UI;
  4. namespace GHZLangChao
  5. {
  6. public class DeviceInfo_Item : AbstractController
  7. {
  8. private DeviceParameters DeviceParameter;
  9. public Transform currentPos;
  10. public DataItem item;
  11. [SerializeField] private Button DetailsBtn;
  12. private IQueueSystem mQueueSystem;
  13. private void Start()
  14. {
  15. DetailsBtn.onClick.AddListener(ClickDetails);
  16. }
  17. int i;
  18. public void Init(DeviceParameters DeviceParameter, int i, DataItem item)
  19. {
  20. this.DeviceParameter = DeviceParameter;
  21. this.i = i;
  22. this.item = item;
  23. }
  24. private void ClickDetails()
  25. {
  26. DeviceParameter.deviceModel = "NetView400" + i;
  27. // Vector3 currentPos = transform.position; // 为了将详情面板移动到面前
  28. this.SendCommand(new DeviceDetailsUpdataDataCommand(DeviceParameter, currentPos, item)); // 触发事件,打开面板,更新数据
  29. item.gameObject.SetActive(false);
  30. }
  31. private void OnEnable()
  32. {
  33. if (mQueueSystem == null)
  34. mQueueSystem = this.GetService<IQueueSystem>();
  35. mQueueSystem.Add(gameObject);
  36. }
  37. private void OnDestroy()
  38. {
  39. mQueueSystem.Remove(gameObject);
  40. }
  41. }
  42. }