在SwiftUI选项卡视图中动态隐藏选项卡-选项卡混合在更多。。。溢出项
当您在SwiftUI选项卡视图中使用在SwiftUI选项卡视图中动态隐藏选项卡-选项卡混合在更多。。。溢出项,swiftui,Swiftui,当您在SwiftUI选项卡视图中使用if语句动态隐藏/显示选项卡时,SwiftUI最终会混淆“更多…”溢出选项卡项中的内容 TabView(){ 如果有某种情况{ 视图1() } 视图2() //…更多视图 } 复制步骤:签出,使用隐藏选项卡的“显示月亮”切换。转到“更多…”溢出选项卡,然后选择“垃圾箱”。现在将显示不正确的视图-“烟雾”而不是“垃圾”视图: 看起来像一个迅捷的bug(FB9078171)。在动态显示和隐藏选项卡时,是否有解决方法来获得正确的行为 试试这个 TabView()
if
语句动态隐藏/显示选项卡时,SwiftUI最终会混淆“更多…”溢出选项卡项中的内容
TabView(){
如果有某种情况{
视图1()
}
视图2()
//…更多视图
}
复制步骤:签出,使用隐藏选项卡的“显示月亮”切换。转到“更多…”溢出选项卡,然后选择“垃圾箱”。现在将显示不正确的视图-“烟雾”而不是“垃圾”视图:
看起来像一个迅捷的bug(FB9078171)。在动态显示和隐藏选项卡时,是否有解决方法来获得正确的行为
试试这个
TabView() {
if someCondition {
View1()
}
View2()
// ... more views
}
.id(someCondition) // << here !!
TabView(){
如果有某种情况{
视图1()
}
视图2()
//…更多视图
}
.id(someCondition)//适用于示例;尽管这会产生重置所有选项卡中所有@State/@StateObjects的副作用。为了避免重置,可能会尝试将选项卡内容设置为EquatableView?这里有一个解释:你能更新你的问题以包括所有相关信息吗?Github回购的链接可能会过期。