小编Lia*_*ley的帖子

TabView、tabItem:在选择时运行代码或添加 onTapGesture

当我在 tabview 中的选项卡之一被选中时,我想运行一些代码。

假设:我想创建一个应用程序,目的是:A) 使用 tabview 和 B) 严重混淆用户。为了实现这一点,我将创建一个带有“一”、“二”和“三”选项卡以及视图“一”、“二”和“三”的应用程序。然后,选择第二个选项卡时,我将改变视图“二”以说出“一个”。恶魔般的。

对此的常识解决方案是这样的:

import SwiftUI

struct ContentView: View {
    @State private var two : String = "Two"
    var body: some View {
        TabView() {
          Text("One")
            .tabItem {
              Text("One")
            }
          Text("Two")
            .tabItem {
              Text(two)
            }
              .onTapGesture {
                print("Tapped!!")
                self.two = "One"
              }
          Text("Three")
            .tabItem {
              Text("Three")
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,这与普通应用程序完全一样,并且无法混淆用户,因为两个未更新(并且控制台中没有“Tapped!”)。

选择或点击 tabItem 时如何运行代码?这可能是更新变量、运行动画或其他任何事情。

tabitem tabview swift swiftui

1
推荐指数
1
解决办法
1186
查看次数

标签 统计

swift ×1

swiftui ×1

tabitem ×1

tabview ×1