问题描述
这听起来像是 SwiftUI 的 NavigationView
和 TabView
中的一个错误,当我有一个 TabView
和(比如说)2 个标签时,第一个标签有一个 TextField
,而第二个选项卡有一个 NavigationView
,请按照以下步骤生成错误:
-注意1:如果您执行以下任何操作,则不会重现该错误:
注意 2:
我在选项卡 2 中使用 GeometryReader
以黄色显示整个视图区域。
工作代码示例(只需复制粘贴即可尝试):
struct ContentView: View {
var body: some View {
TabView {
View1()
.tabItem { Text("View1") }
.tag(1)
View2()
.tabItem { Text("View2") }
.tag(2)
}
}
}
struct View1: View {
@State private var myText = ""
var body: some View {
vstack {
Text("this is view 1")
TextField("Enter Value",text: $myText)
}
}
}
struct View2: View {
var body: some View {
NavigationView {
GeometryReader { reader in
Text("this is view 2")
.onAppear{
print("view 2 on appear")
}
}
.background(Color.yellow)
}
}
}
截图:
有没有办法在不删除 NavigationView
的情况下解决这个问题,我尝试了所有可能的解决方案,但找不到避免它的线索?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)