Swift:.ignoresSafeArea():自由布局的全方位掌握

ignoresSafeArea(_ regions : edges:)修饰符的说明

SwiftUI布局系统会调整视图的尺寸和位置,以避免特定的安全区域。这就确保了系统内容(比如软件键盘)或设备边缘不会遮挡您的视图。要将您的内容扩展到这些区域,您可以通过应用该修改器来忽略特定边缘上的安全区域。

复制代码
func ignoresSafeArea(
    _ regions: SafeAreaRegions = .all,
    edges: Edge.Set = .all
) -> some View
  • regions 视图的安全区域扩展到的区域
    • .all:.ignoresSafeArea(.all)将忽略所有的安全区域边缘,让视图完全占据整个屏幕,适用于需要全屏展示内容的场景。
    • .container:.ignoresSafeArea(.container)将忽略容器视图的安全区域,使得容器视图能够覆盖到导航栏或工具栏等区域。这在创建自定义导航栏或将内容延伸到工具栏下方时非常有用。
    • .keyboard:.ignoresSafeArea(.keyboard)将忽略键盘的安全区域。当键盘出现时,视图不会被遮挡,从而保证输入框和键盘之间的正确布局和可见性。
  • edges 可以指定要忽略的边界类型

    .ignoresSafeArea(.container, edges: .bottom)

这里是指定忽略底部边界,视图可以延伸到底部安全区域之外。

相关推荐
2501_9151063214 小时前
iOS App 测试方法,通过 Xcode、Instruments、Safari Inspector、克魔(KeyMob)等工具
android·ios·小程序·uni-app·iphone·xcode·safari
2501_9160074715 小时前
Xcode 在 iOS 上架中的定位,多工具组合
android·macos·ios·小程序·uni-app·iphone·xcode
xiAo_Ju1 天前
Xcode 26 Debug view hierarchy 不显示隐藏视图问题
xcode
bybitq1 天前
Go函数闭包实战-复用函数
ios·golang·xcode
chen_x_x2 天前
域格模组使用http下载到文件系统以及分段下载
网络协议·http·xcode
东坡肘子2 天前
Swift、SwiftUI 与 SwiftData:走向成熟的 2025 -- 肘子的 Swift 周报 #116
人工智能·swiftui·swift
guangzan3 天前
AI 结对编程:如何让 AI 跳出死循环?
swiftui·vibe coding
游戏开发爱好者85 天前
苹果 App 上架流程,结合 Xcode、CI 等常见工具
macos·ios·ci/cd·小程序·uni-app·iphone·xcode
汉秋6 天前
SwiftUI 中的 compositingGroup():真正含义与渲染原理
swiftui·swift
汉秋6 天前
SwiftUI 中的 @ViewBuilder 全面解析
swiftui·swift