获取WKInterfacePicker的选定项目

时间:2015-06-22 17:07:51

标签: swift watchkit watch-os-2

我正在尝试使用IBAction从列表中选择字符串。截至目前,我正在使用IBOutlets函数,并且正在更新存储选择器值的变量。但是,如果我过快地旋转数字表冠,则变量不会更新,即使选取器中的选定元素与变量的值不同。另外,首次加载视图时所选择的元素有时与变量的初始值不同(例如,在选择器中选择0,但变量的值为2)。我相信我的IBActionsWKInterfacePicker在IB中正确连接。这是测试版软件中的错误,还是我错误地使用了WKInterfaceController?以下是import WatchKit import Foundation class InterfaceController: WKInterfaceController { @IBOutlet var itemPicker:WKInterfacePicker? var pickerVal = 0 override func awakeWithContext(context: AnyObject?) { super.awakeWithContext(context) var itemArr = [WKPickerItem]() for n in 0...5 { let k = WKPickerItem() k.title = String(n) itemArr.append(k) } itemPicker?.setItems(itemArr) itemPicker?.setEnabled(false) } override func willActivate() { // This method is called when watch view controller is about to be visible to user super.willActivate() itemPicker?.setSelectedItemIndex(0) itemPicker?.setEnabled(true) } override func didDeactivate() { // This method is called when watch view controller is no longer visible super.didDeactivate() } @IBAction func itemPickerUpdated(index: Int) { pickerVal = index } } 的代码:

cmdclass

1 个答案:

答案 0 :(得分:4)

我很遗憾地说这是一个WatchOS 2 beta 1错误。我可以重现同样的问题,许多其他人也报告了同样的问题。

希望下一个测试版有一个修复。

更新:在测试版2中仍然被打破

更新:甚至无法在测试版3中运行应用

更新:...或测试版4

更新:无法使用El Capitan beta 6 + XCode 7 beta 4进行构建