protected override void OnCreate(object[] _params) { base.OnCreate(_params); Bind <string, UnityEngine.UI.Text>("Child/MyText", ViewModel.mTextValue, OnValueChanged4MyText); Bind <float, UnityEngine.UI.Slider>("Child/MySlider", ViewModel.mSliderValue, OnValueChanged4MySlider); Bind <UIViewTestItemValue, UnityEngine.UI.Text>("Child/MyGroupText", ViewModel.mItemValue, OnValueChanged4MyGroupText); Bind <List <UIViewTestItemValue>, UnityEngine.UI.ScrollRect>("Child/MyScrollView", ViewModel.mListValue, onValueChanged4MyList); // =================set default value================= ViewModel.mTextValue.Value = "this default value"; ViewModel.mSliderValue.Value = 0f; // ==================================================== // ==============Test Item Value======================= UIViewTestItemValue itemValue = new UIViewTestItemValue(); itemValue.yourName = "A"; itemValue.yourAge = 10; ViewModel.mItemValue.Value = itemValue; // ==================================================== // ==============Test List Value======================= List <UIViewTestItemValue> array = new List <UIViewTestItemValue>(); UIViewTestItemValue one = new UIViewTestItemValue(); one.yourName = "B"; one.yourAge = 11; array.Add(one); UIViewTestItemValue two = new UIViewTestItemValue(); two.yourName = "C"; two.yourAge = 12; array.Add(two); ViewModel.mListValue.Value = array; // ==================================================== }
private void OnValueChanged4MyGroupText(UIViewTestItemValue oldValue, UIViewTestItemValue newValue, Text component) { string str = string.Format("your new name : {0} and your new age : {1}", newValue.yourName, newValue.yourAge); component.text = str; }