public void Push(IViewObject obj)
        {
            AddDictIfNotContains(obj.GetType());

            _viewObjectPoolDict[obj.GetType()].Push(obj);
            OnPushed(obj);
        }
            public void Push(IViewObject viewObject)
            {
                if (viewObject == null)
                {
                    return;
                }

                Assert.IsTrue(viewObject.GetType().Equals(ViewType));
                //
                viewObject.OnDestroyed.Remove(Remove);
                viewObject.OnDestroyed.Add(Remove);
                viewObject.OnUnbinded.Remove(OnViewObjectUnbinded);

                base.Push(viewObject);
            }
Ejemplo n.º 3
0
 /// <summary>
 /// 使用しているModelと自身の型の名前を返します。
 /// </summary>
 /// <param name="viewObject"></param>
 /// <returns></returns>
 public static string GetModelAndTypeName(this IViewObject viewObject)
 {
     return($"(Model:ViewType)=>{viewObject.UseModel}:{viewObject.GetType().FullName}");
 }
Ejemplo n.º 4
0
 public virtual void Attach(IViewObject viewObject)
 {
     Assert.IsTrue(viewObject is MonoBehaviour, $"The ViewObject that this class is attached is not MonoBehaviour... viewObj Type={viewObject.GetType()}");
     Target = viewObject;
 }