예제 #1
0
        public void CreateBinding(GameObject obj)
        {
            _viewGameObject = obj;
            _viewCanvas     = _viewGameObject.GetComponent <Canvas>();

            bool bFirst = false;
            var  view   = obj.GetComponent <ChickenBagItemView>();

            if (view == null)
            {
                bFirst = true;
                view   = obj.AddComponent <ChickenBagItemView>();
                view.FillField();
            }
            DataInit(view);
            SpriteReset();

            view.BindingContext().DataContext = this;
            if (bFirst)
            {
                SaveOriData(view);
                ViewBind(view);
            }
            _view = view;
        }
예제 #2
0
 void SaveOriData(ChickenBagItemView view)
 {
     view.oriTitleGroupShow = _titleGroupShow;
     view.oriItemGroupShow  = _itemGroupShow;
     view.oriTitleText      = _titleText;
     view.oriCountText      = _countText;
     view.oriItemIconBundle = _itemIconBundle;
     view.oriItemIconAsset  = _itemIconAsset;
     view.oriItemNameText   = _itemNameText;
 }
예제 #3
0
 void DataInit(ChickenBagItemView view)
 {
     _titleGroupShow = view.TitleGroupShow.activeSelf;
     _itemGroupShow  = view.ItemGroupShow.activeSelf;
     _titleText      = view.TitleText.text;
     _countText      = view.CountText.text;
     _itemIconBundle = view.ItemIconBundle.BundleName;
     _itemIconAsset  = view.ItemIconAsset.AssetName;
     _itemNameText   = view.ItemNameText.text;
 }
예제 #4
0
        void ViewBind(ChickenBagItemView view)
        {
            BindingSet <ChickenBagItemView, ChickenBagItemViewModel> bindingSet =
                view.CreateBindingSet <ChickenBagItemView, ChickenBagItemViewModel>();

            bindingSet.Bind(view.TitleGroupShow).For(v => v.activeSelf).To(vm => vm.TitleGroupShow).OneWay();
            bindingSet.Bind(view.ItemGroupShow).For(v => v.activeSelf).To(vm => vm.ItemGroupShow).OneWay();
            bindingSet.Bind(view.TitleText).For(v => v.text).To(vm => vm.TitleText).OneWay();
            bindingSet.Bind(view.CountText).For(v => v.text).To(vm => vm.CountText).OneWay();
            bindingSet.Bind(view.ItemIconBundle).For(v => v.BundleName).To(vm => vm.ItemIconBundle).OneWay();
            bindingSet.Bind(view.ItemIconAsset).For(v => v.AssetName).To(vm => vm.ItemIconAsset).OneWay();
            bindingSet.Bind(view.ItemNameText).For(v => v.text).To(vm => vm.ItemNameText).OneWay();

            bindingSet.Build();
        }
예제 #5
0
 private void EventTriggerBind(ChickenBagItemView view)
 {
 }