/// <summary> /// Called immediately after /// <c> /// <see /// cref="M:Android.App.Fragment.OnCreateView(Android.Views.LayoutInflater, Android.Views.ViewGroup, Android.Views.ViewGroup)" /> /// </c> /// has returned, but before any saved state has been restored in to the view. /// </summary> public virtual void OnViewCreated(View view, Bundle savedInstanceState, Action <View, Bundle> baseOnViewCreated) { if (_dialogFragment == null) { if (view != null) { var actionBar = view.FindViewById <Views.ActionBar>(Resource.Id.ActionBarView); if (actionBar != null) { actionBar.Apply(Target.Activity); } } } else { var dialog = _dialogFragment.Dialog; if (dialog != null) { TrySetTitleBinding(); if (_keyListener == null) { _keyListener = new DialogInterfaceOnKeyListener(this); } dialog.SetOnKeyListener(_keyListener); } } baseOnViewCreated(view, savedInstanceState); }
public override void OnDestroy(Action baseOnDestroy) { if (Tracer.TraceInformation) { Tracer.Info("OnDestroy fragment({0})", Target); } RaiseDestroy(); _view.RemoveFromParent(); _view.ClearBindingsRecursively(true, true); _view = null; var dialogFragment = Target as DialogFragment; if (dialogFragment != null) { dialogFragment.Dialog.ClearBindings(true, true); } if (_keyListener != null) { _keyListener.Dispose(); _keyListener = null; } var viewModel = DataContext as IViewModel; if (viewModel != null) { viewModel.Settings.Metadata.Remove(PlatformExtensions.FragmentConstant); object stateManager; if (viewModel.Settings.Metadata.TryGetData(ViewModelConstants.StateManager, out stateManager) && stateManager == this) { viewModel.Settings.Metadata.Remove(ViewModelConstants.StateManager); } } base.OnDestroy(baseOnDestroy); Closing = null; Canceled = null; Destroyed = null; }
public virtual void OnStart(Action baseOnStart) { baseOnStart(); if (!_isStarted) { _isStarted = true; var dialogFragment = Target as DialogFragment; var dialog = dialogFragment?.Dialog; if (dialog != null) { TrySetTitleBinding(dialog); if (_keyListener == null) { _keyListener = new DialogInterfaceOnKeyListener(this); } dialog.SetOnKeyListener(_keyListener); } } }
public virtual void OnStart(Action baseOnStart) { baseOnStart(); if (!_isStarted) { _isStarted = true; var dialogFragment = Target as DialogFragment; var dialog = dialogFragment?.Dialog; if (dialog != null) { if (DataContext != null) { dialog.BindFromExpression("Title DisplayName, Optional=true", new[] { DataContext }); } if (_keyListener == null) { _keyListener = new DialogInterfaceOnKeyListener(this); } dialog.SetOnKeyListener(_keyListener); } } }
public virtual void OnViewCreated(View view, Bundle savedInstanceState, Action <View, Bundle> baseOnViewCreated) { var dialogFragment = Target as DialogFragment; if (dialogFragment == null) { PlatformExtensions.NotifyActivityAttached(Target.Activity, view); } else { var dialog = dialogFragment.Dialog; if (dialog != null) { TrySetTitleBinding(); if (_keyListener == null) { _keyListener = new DialogInterfaceOnKeyListener(this); } dialog.SetOnKeyListener(_keyListener); } } baseOnViewCreated(view, savedInstanceState); }
public override void OnDestroy(Action baseOnDestroy) { if (Tracer.TraceInformation) { Tracer.Info("OnDestroy fragment({0})", Target); } RaiseDestroy(); ClearView(); (Target as DialogFragment)?.Dialog.ClearBindings(true, true); if (_keyListener != null) { _keyListener.Dispose(); _keyListener = null; } (DataContext as IViewModel)?.Settings.Metadata.Remove(PlatformExtensions.FragmentConstant); base.OnDestroy(baseOnDestroy); Closing = null; Canceled = null; Destroyed = null; }