我有一瞥和一些WKInterfaceLabel
。我根据某些条件在setHidden()
中使用override func willActivate()
。
class GlanceController: WKInterfaceController {
@IBOutlet weak var lName: WKInterfaceLabel!
...
override func willActivate() {
// This method is called when watch view controller is about to be visible to user
super.willActivate()
if(conditions) {
lName.setHidden(false)
} else {
lName.setHidden(true)
}
}
}
这适用于模拟器,但在实际观看时,我会在fatal error: unexpectedly found nil while unwrapping an Optional value
获得lName.setHidden()
。
之前有人见过这个吗?
答案 0 :(得分:0)
由于您的“lName”被声明为显式解包可选,因此以下方式访问变量更安全 -
if let validLName = lName {
if(conditions) {
validLName.setHidden(false)
} else {
validLName.setHidden(true)
}
}
}
答案 1 :(得分:0)
您似乎不允许在WatchKit
中使用Glance
,至少对于当前版本的li
。
我完全重新设计我的UI以使用单个标签并且它有效。显然它看起来并不像我想的那么好。
我理解这个限制,但我真的希望有更多的文档来解决问题。就像我发现在设计用户界面后花费时间后我无法在li
中滚动一样。