swift - 如何使用来自单例类中的枚举的状态在 Swift UI 中的 View 中触发警报

标签 swift swiftui

假设有一个关于登录状态的枚举的单例类,如下所示:

@Published var loginState: LoginState = .unknown
单例类实例被分配为 @ObservedObject在 View 中获取其他更改 @Published变量如下:
struct LoginView: View {
    @ObservedObject var loginDelegate = Singleton.shared
当单例 loginState 时,如何使用类似以下内容在 View 中触发警报是否设置为某个枚举大小写(例如 .error )?
}.alert(isPresented: <something> ) { ... }

最佳答案

尝试以下

}.alert(isPresented: .constant(loginDelegate.loginState == .error)) { ... }
但您需要重置 loginDelegate.loginState回到,比如说,.unknown在警报关闭按钮操作中,否则警报可能会立即重新出现。

关于swift - 如何使用来自单例类中的枚举的状态在 Swift UI 中的 View 中触发警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65025322/

相关文章:

menu - SwiftUI - 如何在表单中添加 "letters sections"和字母跳线?

php - 使用 JSON 字典的 POST 请求不会在 Swift 3 中使用 $_POST 返回正确的值?

ios - 完成处理程序和 block 之间的区别 : [iOS]

ios - 防止 AVPlayer 取消背景音频

swift - 我们如何在 SwiftUI 中使用 GeometryReader 获取和读取文本的大小?

swift - 是什么启用了 SwiftUI 的 DSL?

ios - 为 UIPickerView 创建公制和英制高度数组?

ios - 设置 AVPlayerViewController 的背景图片

使用 Firebase pod 的 Xcode 12。词法或预处理器问题。 "pb.h' 文件未找到 <angled> 包含;使用 "quotes"代替”?

动画后快速更改 View