public void CreateBinding(GameObject obj) { _viewGameObject = obj; _viewCanvas = _viewGameObject.GetComponent <Canvas>(); bool bFirst = false; var view = obj.GetComponent <CommonFocusMaskView>(); if (view == null) { bFirst = true; view = obj.AddComponent <CommonFocusMaskView>(); view.FillField(); } DataInit(view); SpriteReset(); view.BindingContext().DataContext = this; if (bFirst) { SaveOriData(view); ViewBind(view); } _view = view; view.GenerateTrigger(); EventTriggerBind(view); }
private void EventTriggerBind(CommonFocusMaskView view) { _onOnMaskEventTriggerHoverChanged = (val) => view.OnMaskEventTriggerHover = val; _onOnMaskEventTriggerClickChanged = (val) => view.OnMaskEventTriggerClick = val; _onOnMaskEventTriggerMouseDownChanged = (val) => view.OnMaskEventTriggerMouseDown = val; _onOnMaskEventTriggerMouseUpChanged = (val) => view.OnMaskEventTriggerMouseUp = val; _onOnMaskEventTriggerHoverExitChanged = (val) => view.OnMaskEventTriggerHoverExit = val; }
void ViewBind(CommonFocusMaskView view) { BindingSet <CommonFocusMaskView, CommonFocusMaskViewModel> bindingSet = view.CreateBindingSet <CommonFocusMaskView, CommonFocusMaskViewModel>(); bindingSet.Bind(view.Show).For(v => v.activeSelf).To(vm => vm.Show).OneWay(); bindingSet.Build(); }
void SaveOriData(CommonFocusMaskView view) { view.oriShow = _show; }
void DataInit(CommonFocusMaskView view) { _show = view.Show.activeSelf; }