【问题标题】:Is there a possibility to deactivate a button in SwiftUI?是否有可能停用 SwiftUI 中的按钮?
【发布时间】:2019-09-16 20:06:51
【问题描述】:

是否可以在 SwiftUI 中停用按钮?什么都找不到?

我想使用 Alamofire 进行下载,然后在成功下载后激活按钮。

【问题讨论】:

    标签: swiftui


    【解决方案1】:

    您可以使用.disabled 修饰符。根据文档:

    添加一个条件来控制用户是否可以与之交互 查看。

    import SwiftUI
    
    struct ContentView: View {
        @State private var buttonDisabled = true
    
        var body: some View {
            Button(action: {
                //your action here
            }) {
                Text("CLICK ME!")
            }
            .disabled(buttonDisabled)
        }
    }
    
    #if DEBUG
    struct ContentView_Previews: PreviewProvider {
      static var previews: some View {
        ContentView()
      }
    }
    #endif
    

    下载完成后,您可以将 buttonDisabled 状态变量设置为 false。

    【讨论】:

    • 但 disabled() 也会改变按钮标签的外观..
    • @JonathanK 然后使用allowsHitTesting 修饰符。它不会修改视图的外观。
    猜你喜欢
    • 2018-03-19
    • 1970-01-01
    • 2013-12-18
    • 1970-01-01
    • 1970-01-01
    • 2020-06-09
    • 2020-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多