GeWuYou 323976677c refactor(ui): 将View属性重命名为Original以统一接口设计
- 将IUiPageBehavior中的View属性重命名为Original
- 更新UiRouterBase中日志输出使用Original属性替代View属性
- 在ISceneBehavior接口中添加Original属性定义
- 在SceneBehaviorBase实现类中添加Original属性实现
- 在CanvasItemUiPageBehaviorBase中将View属性改为Original属性
- 更新相关注释文档说明Original属性用途
2026-02-15 22:07:49 +08:00

106 lines
2.8 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using GFramework.Game.Abstractions.enums;
namespace GFramework.Game.Abstractions.ui;
/// <summary>
/// UI页面行为接口定义了UI页面的生命周期方法和状态管理
/// </summary>
public interface IUiPageBehavior
{
/// <summary>
/// 获取或设置当前UI句柄。
/// </summary>
/// <value>
/// 表示当前UI句柄的可空类型 <see cref="UiHandle"/>。
/// </value>
/// <remarks>
/// 此属性允许获取或设置与当前上下文关联的UI句柄。若未设置则其值为 null。不可重入的ui句柄通常为null
/// </remarks>
UiHandle? Handle { get; set; }
/// <summary>
/// 获取当前UI层的实例。
/// </summary>
/// <value>
/// 返回与当前上下文关联的 <see cref="UiLayer"/> 实例。
/// </value>
/// <remarks>
/// 此属性用于访问与当前上下文关联的UI层对象通常用于管理UI的层次结构和交互逻辑。
/// </remarks>
UiLayer Layer { get; }
/// <summary>
/// 获取一个布尔值,指示当前操作是否为重入操作。
/// </summary>
/// <remarks>
/// 重入操作通常指在同一个执行上下文中多次调用相同的方法或逻辑。
/// 此属性可用于检测并避免重复执行可能导致异常或不一致状态的操作。
/// </remarks>
bool IsReentrant { get; }
/// <summary>
/// 获取原始对象。
/// </summary>
/// <returns>原始对象。</returns>
object Original { get; }
/// <summary>
/// 获取键值
/// </summary>
/// <value>返回当前对象的键标识符</value>
string Key { get; }
/// <summary>
/// 获取页面是否处于活动状态
/// </summary>
bool IsAlive { get; }
/// <summary>
/// 获取页面是否可见
/// </summary>
bool IsVisible { get; }
/// <summary>
/// 获取页面是否为模态页面
/// </summary>
bool IsModal { get; }
/// <summary>
/// 获取页面是否阻断下层交互
/// </summary>
bool BlocksInput { get; }
/// <summary>
/// 页面进入时调用的方法
/// </summary>
/// <param name="param">页面进入时传递的参数,可为空</param>
void OnEnter(IUiPageEnterParam? param);
/// <summary>
/// 页面退出时调用的方法
/// </summary>
void OnExit();
/// <summary>
/// 页面暂停时调用的方法
/// </summary>
void OnPause();
/// <summary>
/// 页面恢复时调用的方法
/// </summary>
void OnResume();
/// <summary>
/// 页面被覆盖时调用(不销毁)
/// </summary>
void OnHide();
/// <summary>
/// 页面重新显示时调用的方法
/// </summary>
void OnShow();
}