Skip to content

05 · 灵动岛与全屏安全区适配

防止 UI 元素被 iPhone 灵动岛、刘海、底部 Home 指示条以及 Telegram 顶部标题栏遮挡裁切。


双轨接入方式

Track A — 预制体积木工作流

  1. 打开 05_SafeArea_Demo 演示场景。
  2. FastTMA_SafeAreaContainerPackages/com.fasttma.core/Runtime/Prefabs/ 拖入 Canvas 根节点。
  3. 将所有需要防遮挡的游戏 UI 放入此容器内:
    • 底部操作按钮
    • 顶部金币/分数栏
    • 弹窗与对话框

容器已预配置 TelegramSafeArea 组件,运行时自动依据硬件内边距收缩边距。


Track B — 非侵入式组件挂载

  1. 在商业项目中选择最顶层的全屏 UI 根面板(如 UIRootPanel)。
  2. 点击 Add Component → TelegramSafeArea
  3. 在 Inspector 中确认勾选 "Enable Top Safe Area""Enable Bottom Safe Area"

技术说明:组件在 LateUpdate 中动态更新 RectTransform 边距,实现:

  • 零 GC 分配
  • 无缝适应屏幕方向变化
  • 自动适配灵动岛内边距与 Telegram 客户端标题栏高度

演示参考

完整演示实现请参见 Packages/com.fasttma.core/Samples/05_SafeArea