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)

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

相关推荐
007php0075 小时前
Go语言面试:传值与传引用的区别及选择指南
java·开发语言·后端·算法·面试·golang·xcode
大熊猫侯佩2 天前
当液态玻璃计划遭遇反叛者:一场 iOS 26 界面的暗战
swiftui·xcode·apple
雪糕吖2 天前
SwiftUI 自定义 Shape:实现顶部圆角矩形 RoundedTopRectangle
ios·swiftui
Magnetic_h4 天前
【iOS】关键字复习
笔记·学习·ios·objective-c·cocoa·xcode
东坡肘子4 天前
写给这段旅程,也写给未来的自己 | 肘子的 Swift 周报 #0100
swiftui·swift·apple
007php0075 天前
Go 错误处理:用 panic 取代 err != nil 的模式
java·linux·服务器·后端·ios·golang·xcode
cpuwolf7 天前
CMake xcode编译器属性设置技巧
ide·macos·xcode
MicrosoftReactor10 天前
技术速递|Model Context Protocol (MCP) 支持已上线 JetBrains、Eclipse 和 Xcode
ai·eclipse·copilot·xcode·mcp
大熊猫侯佩10 天前
SwiftUI 三阵诀:杨过绝情谷悟 “视图布阵” 之道
swiftui·swift·apple
Magnetic_h10 天前
【iOS】内存管理及部分Runtime复习
笔记·学习·macos·ios·objective-c·cocoa·xcode