此问题中的解决方案*使用setHidden隐藏和取消隐藏WKInterfaceGroup:
atypeofGroup.setHidden(true)
atypeofGroup.setHidden(false)
但是问题是,这个小组会突然出现和消失,看起来并不专业。有人可以指导我吗?不确定是否与此相关:
atypeofGroup.animationDidStart(anim: CAAnimation!)
* hide and show WKInterfaceGroup programmatically
最佳答案
这是一个很好的问题,但是使用WatchKit
的当前实现无法为两组之间的变化设置动画。我当然希望它也是如此。
您唯一的选择是完全通过reloadRootControllersWithNames:contexts:
切换接口控制器,或者使用您首先列出的方法来显示/隐藏几个组。这是一个小示例,说明如何在页面集中从SimpleInterfaceController
切换到FirstInterfaceController
和SecondInterfaceController
。
class SimpleInterfaceController : WKInterfaceController {
override func willActivate() {
super.willActivate()
let names = ["FirstInterfaceIdentifier", "SecondInterfaceIdentifier"]
WKInterfaceController.reloadRootControllersWithNames(names, contexts: nil)
}
}
我不确定您在哪里找到以下代码片段,但它肯定不是WKInterfaceGroup上 public API的一部分。
atypeofGroup.animationDidStart(anim: CAAnimation!)
尽管我知道这些答案都不是理想的,但我们目前可以使用这些答案。如果您有时间,我建议在Apple的bug reporting system上提出功能请求。