gpt4 book ai didi

swiftui 有 2 个或 3 个操作表的一个 View ?

转载 作者:行者123 更新时间:2023-12-03 16:50:35 24 4
gpt4 key购买 nike

我想使用变量在 View 中调用不同的操作表。这并不意味着工作。

.actionSheet(isPresented: self.$neuinitialisierung) {
ActionSheet(
title: Text("Testtitel 1"),
message: Text("Testmessage 1"),
buttons: [
.default(Text("Button 1"),
action: {
print("KLICK")
}),
.default(Text("Button 2"),
action: {
self.clouddienst_waehlen = true;
})
])
}
.actionSheet(isPresented: self.$clouddienst_waehlen) {
ActionSheet(
title: Text("Testtitel 2"),
message: Text("Testmessage 2"),
buttons: [
.default(Text("Button 1"),
action: {
print("KLICK")
}),
.default(Text("Button 2"),
action: {
self.clouddienst_waehlen = true;
})
])
}

如果我只用一张 Action 表尝试它,它就会起作用。我怎样才能使用第二个?

最佳答案

我想出了这个解决方案:

@State var showingMenu = false
@State var optionsMenu: OptionsMenu = .main

enum OptionsMenu { case main, export }

...

.actionSheet(isPresented: $showingMenu) {
if self.optionsMenu == .main {
return ActionSheet(title: Text("Main Menu"), buttons: [
.default(Text("Export Menu")) {
delay(0.1) {
self.optionsMenu = .export
self.showingMenu = true
}
}
.destructive(Text("Close"))
])
} else {
return ActionSheet(title: Text("Export Menu"), buttons: [
.default(Text("Export timeline as GPX")) {
// TODO
},
.default(Text("Export timeline as JSON")) {
// TODO
},
.destructive(Text("Close"))
])
}
}

并且打开第一个菜单的按钮需要确保重置枚举值,否则在下一个按钮点击时会打开错误的菜单:

Button(action: {
self.optionsMenu = .main
self.showingMenu = true
}) {
Image(systemName: "ellipsis")
}

关于swiftui 有 2 个或 3 个操作表的一个 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58367086/

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