using TMPro; using uMVVM.Sources.Infrastructure; using UnityEngine.UI; namespace Game.MVVM.Model { public class MallStoreItemView : UnityGuiView { private string icon; private object data; public Image imgIcon; public TMP_Text txtName; public Toggle tog; protected override void OnInitialize() { base.OnInitialize(); this.Binder.Add("ItemId", this.IdOnValueChanged); this.Binder.Add("ItemName", this.ItemNameOnValueChanged); this.Binder.Add("ItemIcon", this.ItemIconOnValueChanged); this.Binder.Add("ItemDesc", this.ItemDescOnValueChanged); this.Binder.Add("ItemData", this.ItemDataOnValueChanged); this.tog.onValueChanged.AddListener(this.ClickToggle); } private void ClickToggle(bool isTrue) { this.BindingContext.OnClickTog?.Invoke(isTrue, this.txtName.text, this.gameObject); } private void ItemDataOnValueChanged(object oldvalue, object newvalue) { this.BindingContext.ItemData.Value = newvalue; } private void ItemIconOnValueChanged(string oldvalue, string newvalue) { this.BindingContext.ItemIcon.Value = newvalue; this.icon = newvalue; this.imgIcon = null; } private void ItemDescOnValueChanged(string oldvalue, string newvalue) { this.BindingContext.ItemDesc.Value = newvalue; } private void ItemNameOnValueChanged(string oldvalue, string newvalue) { this.BindingContext.ItemName.Value = newvalue; this.txtName.text = newvalue; } private void IdOnValueChanged(long oldvalue, long newvalue) { this.BindingContext.ItemId.Value = newvalue; } } }