添加按钮到列表单元格

Wil*_*ill 2 ios swift swiftui

如何向我的List单元格添加按钮?

var body: some View{
    List {
        VStack {
            Button(action: {
                print("Hello, World!")
            }, label: {
                Text("Hello, World!")
            })
            Text("Something irrelevant")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Hello, World!上面的内容在我点击时打印Hello, World!,而且在我点击时打印Something irrelevant。我只想在点击按钮时发生这种情况,我该怎么做呢?

Wil*_*ill 5

在 SwiftUI 中,当您点击列表中的单元格时,action会调用每个子按钮的参数。如果这不是您想要的行为,您需要配置tapAction按钮的属性,同时将action参数留空。

在这种情况下,您的代码将如下所示:

 var body: some View{
        List {
            VStack {
                Button(action: {

                }, label: {
                    Text("Hello, World!")
                }).tapAction {
                    print("Hello, World!")
                }
                Text("Something irrelevant")
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)