示例#1
0
 public void Add(ViewType viewType, TypedView view)
 {
     if (!_typedViewInstances.ContainsKey(viewType))
     {
         _typedViewInstances[viewType] = view;
         _stack.Add(viewType);
     }
     else
     {
         _typedViewInstances[viewType] = view;
     }
 }
示例#2
0
        private IEnumerator RemoveImpl(TypedView view, float delay)
        {
            yield return(view.AnimOut());

            yield return(new WaitForSeconds(delay));

            if (view && view.gameObject)
            {
                view.OnViewRemove();
                ClosedViewStream.OnNext(view.Type);
                _typedViewFactory.UnloadPrefab(view.Type);
                Object.Destroy(view.gameObject);
            }
        }
示例#3
0
 public bool TryGetValue(ViewType key, out TypedView instance)
 {
     return(_typedViewInstances.TryGetValue(key, out instance));
 }