05 · 灵动岛与全屏安全区适配
防止 UI 元素被 iPhone 灵动岛、刘海、底部 Home 指示条以及 Telegram 顶部标题栏遮挡裁切。
双轨接入方式
Track A — 预制体积木工作流
- 打开
05_SafeArea_Demo演示场景。 - 将
FastTMA_SafeAreaContainer从Packages/com.fasttma.core/Runtime/Prefabs/拖入Canvas根节点。 - 将所有需要防遮挡的游戏 UI 放入此容器内:
- 底部操作按钮
- 顶部金币/分数栏
- 弹窗与对话框
容器已预配置 TelegramSafeArea 组件,运行时自动依据硬件内边距收缩边距。
Track B — 非侵入式组件挂载
- 在商业项目中选择最顶层的全屏 UI 根面板(如
UIRootPanel)。 - 点击 Add Component →
TelegramSafeArea。 - 在 Inspector 中确认勾选 "Enable Top Safe Area" 与 "Enable Bottom Safe Area"。
技术说明:组件在 LateUpdate 中动态更新 RectTransform 边距,实现:
- 零 GC 分配
- 无缝适应屏幕方向变化
- 自动适配灵动岛内边距与 Telegram 客户端标题栏高度
演示参考
完整演示实现请参见 Packages/com.fasttma.core/Samples/05_SafeArea。