TabView 内的条件

Posted

技术标签:

【中文标题】TabView 内的条件【英文标题】:Conditions inside a TabView 【发布时间】:2021-09-08 05:44:25 【问题描述】:

我有一个 TabView,仅当条件检查时我想在其中添加另一个页面。不幸的是,我无法添加另一个页面。我注意到选项卡视图中的所有页面仅在初始化选项卡视图时创建。有什么方法可以刷新 tabview 吗?

struct Demo2: View 
    @State private var showNextTab = false
    
    var body: some View 
        TabView 
            Text("Tab1")
                .onTapGesture 
                    self.showNextTab = true
                
            
            if showNextTab 
                Text("Tab2")
            
        .tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))
        
    

【问题讨论】:

【参考方案1】:

将 id 设置为 TabView。这将刷新 TabView。

TabView 
    Text("Tab1")
        .onTapGesture 
            self.showNextTab = true
        
    
    if showNextTab 
        Text("Tab2")
    

.id(showNextTab) // << Here

【讨论】:

以上是关于TabView 内的条件的主要内容,如果未能解决你的问题,请参考以下文章

如何更新或读取 TabView 中的 GridLayout 内的文本字段

SwiftUI - 如何将工具栏添加到 NavigationView 内的 TabView 选项卡?

ios 13 SwiftUI向后导航时如何避免导航视图内的TabView应用崩溃

LVGL v8学习笔记 | 10 - Tabview控件的使用方法

LVGL v8学习笔记 | 10 - Tabview控件的使用方法

p:tabView:直接链接到选项卡