12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.EventSystems;
- using UnityEngine.UI;
- using Blue;
- public class ShowHide_Toggle : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IController
- {
- public List<Sprite> SpriteList;
- public Image mImage;
- private Toggle toggle;
- Color normalColor = new Color32(255, 255, 255, 255);
- Color changeColor = new Color32(255, 255, 255, 125);
- private IQueueSystem mQueueSystem;
- void Awake()
- {
- toggle = GetComponent<Toggle>();
- toggle.onValueChanged.AddListener(ShowHideLevel3);
- mQueueSystem = this.GetService<IQueueSystem>();
- mQueueSystem.Level3QueueCount.Register(mQueueSystemCountNotNull).UnRegisterWhenGameObjectDestroyed(gameObject);
- }
- private void OnEnable()
- {
- Debug.Log($"打开的数量:{mQueueSystem.Level3QueueCount.Value}");
- }
- public void OnPointerEnter(PointerEventData eventData)
- {
- mImage.color = normalColor;
- }
- public void OnPointerExit(PointerEventData eventData)
- {
- mImage.color = changeColor;
- }
- private void mQueueSystemCountNotNull(int newCount)
- {
- Debug.Log($"打开的数量:{mQueueSystem.Level3QueueCount.Value}");
- }
- private void ShowHideLevel3(bool on)
- {
- Debug.LogError("Level3Queue:" + mQueueSystem.Level3List.Count);
- if (on)
- mImage.sprite = SpriteList[0];
- else
- mImage.sprite = SpriteList[1];
- foreach (var go in mQueueSystem.Level3List)
- {
- go.SetActive(!on);
- }
- }
- }
|