using System;
using XGame.Framework.Interfaces;
namespace XGame.Framework.UI
{
///
/// UI对象的管理接口
/// 管理UIPanel,UIController,UIViewModel等
///
public interface IUIView : IUpdate, ILateUpdate
{
///
/// Panel实例
///
IUIPanel Panel { get; }
///
/// 激活状态
///
bool Active { get; }
///
/// 激活
///
void Enable(object intent = null);
///
/// 隐藏
///
void Disable();
}
///
/// UIView适配器
///
public interface IUIViewAdapter
{
///
/// Context对应的UIKey
/// 业务不要赋值
///
public UIKey Key { set; }
///
/// UIView的UIControllerGroup对象
///
public IUIControllerGroup CtrlGroup { get; set; }
///
/// 构建NestedView
///
///
///
/// 是否是静态的(其他预制的子节点)
///
TNestedView CreateNested(IUINested nested, bool isStatic) where TNestedView : class, INestedView;
///
/// 构建NestedView
///
/// TNestedView : class, INestedView
///
/// 是否是静态的(其他预制的子节点)
///
INestedView CreateNested(Type nestedViewType, IUINested nested, bool isStatic);
}
}