【Swift3】【WatchKit】WKInterfaceSwitch의 상태를 취득한다

WKIntarfaceSwich의 상태를 얻고 싶습니다.



처음으로 Watch 대응 어플에 도전중의 내가 갑자기 벽에 부딪쳤기 때문에 정리.

watchOS에서 버튼을 누를 때 Switch on/off를 가져옵니다.
무언가를 하고 싶었지만 할 수 없었습니다.



↑ 이것의 탭을 누르면 switch가 on인지 off인지 취득하고 싶었다.

했던 일



InterfaceController.swift
@IBOutlet var testSwitch: WKInterfaceSwitch!

@IBAction func tapped() {
     print(testPicker.isOn)  // エラー
}

UISwitch에서는 isOn에서 Switch 상태를 얻을 수 있었지만,
WKInterfaceSwitch에서는 안되는 것 같다.

원래 Switch의 상태를 취득하는 프로퍼티는 없는 것 같다.

참고: check if switch is on boolean watchkit (stackOverflow로 날아갑니다)

Action으로 취득은 할 수 있는 것 같기 때문에, 이렇게 할 뿐 지금의 나에게는 무리였습니다.

InterfaceController.swift
//@IBOutlet var testSwitch: WKInterfaceSwitch!
var state = true

@IBAction func switchChanged(_ value: Bool) {
     if value {
          state = true
     }else {
          state = false
     }
}

@IBAction func tapped() {
     print(state)
}

WKInterfacePicker에서도 마찬가지입니다.



Switch와 마찬가지로 Picker도 selectedRow()가 좋지 않았습니다.
이쪽도 취득하는 프로퍼티가 없는 것 같다.

Action에서 골고루 밖에 없는 것일까.

좋은 웹페이지 즐겨찾기