我正在尝试使用IBAction
从列表中选择字符串。截至目前,我正在使用IBOutlets
函数,并且正在更新存储选择器值的变量。但是,如果我过快地旋转数字表冠,则变量不会更新,即使选取器中的选定元素与变量的值不同。另外,首次加载视图时所选择的元素有时与变量的初始值不同(例如,在选择器中选择0,但变量的值为2)。我相信我的IBActions
和WKInterfacePicker
在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
答案 0 :(得分:4)
我很遗憾地说这是一个WatchOS 2 beta 1错误。我可以重现同样的问题,许多其他人也报告了同样的问题。
希望下一个测试版有一个修复。
更新:在测试版2中仍然被打破
更新:甚至无法在测试版3中运行应用
更新:...或测试版4
更新:无法使用El Capitan beta 6 + XCode 7 beta 4进行构建