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)

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

相关推荐
Sheffi663 天前
Xcode 26.3 AI编程搭档深度解析:如何用自然语言10分钟开发完整iOS应用
ios·ai编程·xcode
SwiftUI大叔5 天前
SwiftUI View 继承扩展:别再执着于 UIKit 的“子承父业”啦!
swiftui
东坡肘子5 天前
Xcode 迈入 Agent 时代 -- 肘子的 Swift 周报 #122
人工智能·swiftui·swift
Aftery的博客7 天前
Xcode运行报错:SDK does not contain ‘libarclite‘ at the path
macos·cocoa·xcode
文件夹__iOS7 天前
AsyncStream 进阶实战:SwiftUI 全局消息流极简实现
ios·swiftui·swift
风栖柳白杨10 天前
【语音识别】Qwen3-ASR原理及部署
人工智能·python·语音识别·xcode·audiolm
£漫步 云端彡10 天前
Golang学习历程【第九篇 结构体(struct)】
学习·golang·xcode
CYpdpjRnUE10 天前
光伏电池PV建模及其基于Boost Buck电路的最大功率追踪MPPT算法研究及仿真效果探究
swiftui
pop_xiaoli10 天前
effective-Objective-C 第一章阅读笔记
开发语言·笔记·ios·objective-c·cocoa·xcode
0wioiw011 天前
Onesignal(Xcode)
ide·macos·xcode