Swift 防止 TabBar 在键盘处于活动状态时向上移动
Posted
技术标签:
【中文标题】Swift 防止 TabBar 在键盘处于活动状态时向上移动【英文标题】:Swift prevent TabBar from moving up when Keyboard is active 【发布时间】:2021-01-07 19:39:18 【问题描述】:所以每当我的键盘切换时,Tabbar 就会随之向上移动,如图所示。当键盘处于活动状态时,有没有办法防止这种情况发生?我的版本是 ios 14 和 XCode 12 提前致谢!
/// 更正: 如何修改 SwiftUI 中的任何 View 以防止键盘出现时向上移动?
struct SwiftUIView: View
@State var text = ""
var body: some View
VStack
TextField("Text", text: $text)
Text(">>Don't Move Me Up When Keyboard Is Active<<")
保罗
simulator view when tabbar moves up when keyboard is active
【问题讨论】:
你能给我们看一些代码吗? 欢迎来到 Stack Overflow。请使用tour 并查看How to Ask。您需要至少向我们展示您正在执行的导致标签栏移动的代码。 嘿,对不起,它有点棘手,因为我实现了代码并且发生了很多事情,但是由于 swiftui TabView 的限制,我使用了一个包裹在 Representable 中的 UITabbarcontroller,然后禁用了真正的TabBar 来实现我自己的一个有效的。但由于它是一个自定义的(带有图标的 HStack),它当然不会被识别为 Tabbar。所以问题是,当键盘出现时,我怎样才能防止一般的东西向上移动。抱歉之前的描述不好...... 【参考方案1】:尝试将以下修饰符添加到您的标签栏:
.ignoresSafeArea(.keyboard, edges: .bottom)
【讨论】:
嘿,这很好用。我还在这里找到了这个,他们提到还要添加一个 Spacer() 以使其工作!太感谢了! ***.com/questions/63968241/… @Paul 您介意将此答案标记为已接受吗?很高兴它有帮助。 我正在使用自定义选项卡视图,当我在导航视图中添加此修饰符时,解决方案正在运行以上是关于Swift 防止 TabBar 在键盘处于活动状态时向上移动的主要内容,如果未能解决你的问题,请参考以下文章
如何检测 UIAccessibilityRequestGuidedAccessSession 在设备上是不是处于活动状态,iOS swift?
当 iOS 键盘处于活动状态时,CSS 方向会自动切换到横向