gpt4 book ai didi

SwiftUI - ActionSheet 中的动态按钮列表

转载 作者:行者123 更新时间:2023-12-04 16:27:02 25 4
gpt4 key购买 nike

我需要在 ActionSheet 中生成按钮的动态列表.假设我有一系列选项 ["Option1", "Option2"] ,我怎样才能做到这一点?

.actionSheet(isPresented: self.$showSheet, content: {
ActionSheet(title: Text("Select an option"), buttons: [
.default(Text("Option1")){self.option = 1},
.default(Text("Option2")){self.option = 2},
.default(Text("Option3")){self.option = 3},
.default(Text("Option4")){self.option = 4},
.cancel()])
}

最佳答案

这是可能的解决方案。使用 Xcode 11.4/iOS 13.4 测试

具有辅助功能

func generateActionSheet(options: [String]) -> ActionSheet {
let buttons = options.enumerated().map { i, option in
Alert.Button.default(Text(option), action: { self.option = i + 1 } )
}
return ActionSheet(title: Text("Select an option"),
buttons: buttons + [Alert.Button.cancel()])
}

然后你可以使用
.actionSheet(isPresented: self.$showSheet, content: {
// assuming you have `currentOptions` (or similar) property for dynamic
// options
self.generateActionSheet(options: self.currentOptions)
})

关于SwiftUI - ActionSheet 中的动态按钮列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62017352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com