public void Add(ViewType viewType, TypedView view) { if (!_typedViewInstances.ContainsKey(viewType)) { _typedViewInstances[viewType] = view; _stack.Add(viewType); } else { _typedViewInstances[viewType] = view; } }
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); } }
public bool TryGetValue(ViewType key, out TypedView instance) { return(_typedViewInstances.TryGetValue(key, out instance)); }