gpt4 book ai didi

ios - 如何向用户呈现警报?

转载 作者:搜寻专家 更新时间:2023-11-01 06:11:19 25 4
gpt4 key购买 nike

我想问一下我怎样才能向用户显示警报。我刚试过:

.navigationBarItems(trailing: Button(action: {
let alert = Alert(title: Text("Add category"), message: Text("Do you want add category?"), primaryButton: Alert.Button.default(Text("Yes"), onTrigger: {
self.sceneries[0].sceneries.append(Scenery(name: "Name", imageName: "1"))
}), secondaryButton: Alert.Button.cancel())
self.presentation(self.$isShownAlert) { () -> Alert in
return alert
}
}, label: {
Text("Add category")
}))

但是它告诉我它没有被使用并且没有出现alert...

最佳答案

您需要在应显示警报的 View 之上调用 presentation API。

实现此目的的最佳方法是使用一个 @State 变量,它告诉 SwiftUI 是否应显示警报。

然后 Button 操作会将其设置为 true,从而使 body 无效,并触发 View 重建。

struct ContentView : View {

@State var showAlert = false

var body: some View {
NavigationView {
List(0...10) { value in
Text(verbatim: "\(value)")
}
.navigationBarItems(leading: EmptyView(), trailing: Button(action: {
self.showAlert = true
}) {
Text(verbatim: "Show alert")
})
.navigationBarTitle(Text(verbatim: "A List"))
}
.presentation($showAlert) {
return Alert(title: Text(verbatim: "An Alert"))
}
}

}

在此示例中,按钮将 @State 设置为 true,并且 presentation 在导航 View 上被调用。

结果:

enter image description here

关于ios - 如何向用户呈现警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56506785/

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