功能需求
我们有时需要在 App 主视图的顶部或底部固定悬浮放置一个功能视图:
如上图所示,我们将一个列表项目输入小面板按需放在主视图的顶部或底部:
- 当放置在顶部时,解决了其对导航栏(NavigationView)中 toolbar 内容的遮挡问题;
- 当放置在底部时,考虑到了其对列表最后一行可能出现的遮挡问题;
这是如何实现的呢?
其实,在 iOS 15.0+ 中这超乎寻常的简单。
还等什么呢?Let’s make it happen!!!😉
功能分析
1. 悬浮面板
所谓“悬浮面板”其实是一个小视图,我们一般把它放在主视图(或功能视图)的顶部或底部,它们不会被主视图中的其它内容所遮挡,便于用户进行快捷操作。
自从 iOS 15 开始,SwiftUI 提供了新的 safeAreaInset(…) 方法来助我们一臂之力: