如何从开关状态获取布尔值?

时间:2018-03-04 16:17:09

标签: ios swift cocoa-touch uiswitch

我想得到交换机的当前布尔值。如何在swift4中做到这一点?

@IBOutlet weak var switch_1: UISwitch!
var switch1_state: Bool = swich_1.get ???

2 个答案:

答案 0 :(得分:1)

您可以简单地调用switch.isOn来获取UISwitch的状态,但您应该为UISwitch创建一个IBAction,每次切换状态时都会调用它变化。

如果您不需要在每次交换机状态更改时将通知存储在计算属性中,或者将值存储在存储属性中,可以将交换状态存储在计算属性中,可以从连接的IBAction更改其值

var switchState:Bool {
    return switch.isOn
}

你还应该遵守Swift命名约定,它是函数和变量名的lowerCamelCase。

答案 1 :(得分:0)

首先请使用 camelCased 而不是 snake_cased 变量名称。

其次,在第二行中有一个错字 - 缺少t

最后请使用代码完成(只有一个Bool属性)或阅读documentation

enter image description here