61 lines
1.9 KiB
C#
61 lines
1.9 KiB
C#
using TMPro;
|
|
using uMVVM.Sources.Infrastructure;
|
|
using UnityEngine.UI;
|
|
|
|
namespace Game.MVVM.Model
|
|
{
|
|
public class MallStoreItemView : UnityGuiView<MallStoreItemViewModel>
|
|
{
|
|
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<long>("ItemId", this.IdOnValueChanged);
|
|
this.Binder.Add<string>("ItemName", this.ItemNameOnValueChanged);
|
|
this.Binder.Add<string>("ItemIcon", this.ItemIconOnValueChanged);
|
|
this.Binder.Add<string>("ItemDesc", this.ItemDescOnValueChanged);
|
|
this.Binder.Add<object>("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;
|
|
}
|
|
}
|
|
} |