如何使用动画以编程方式隐藏和显示 WKInterfaceGroup?

How to hide and show WKInterfaceGroup programmatically with animation?

这个问题的解决方案*使用setHidden来隐藏和取消隐藏一个WKInterfaceGroup:

    atypeofGroup.setHidden(true)
    atypeofGroup.setHidden(false)

但问题是,这个群会突然出现又突然消失,看起来不专业。有人可以指导我吗?不确定是否与此有关:

    atypeofGroup.animationDidStart(anim: CAAnimation!)

*

这是一个很好的问题,但是在 WatchKit 的当前实现中,不可能在两个组之间设置动画。我绝对希望它也是如此。

您唯一的选择是完全通过 reloadRootControllersWithNames:contexts: 切换界面控制器,或者使用您首先列出的方法切换到 show/hide 几个组。这是一个小示例,说明如何在页面集中从 SimpleInterfaceController 切换到 FirstInterfaceControllerSecondInterfaceController

class SimpleInterfaceController : WKInterfaceController {
    override func willActivate() {
        super.willActivate()

        let names = ["FirstInterfaceIdentifier", "SecondInterfaceIdentifier"]
        WKInterfaceController.reloadRootControllersWithNames(names, contexts: nil)
    }
}

我不确定您在哪里找到以下代码片段,但它肯定不是 WKInterfaceGroup.

上 public API 的一部分
atypeofGroup.animationDidStart(anim: CAAnimation!)

虽然我知道 none 这些答案是理想的,但目前我们只能访问这些答案。如果您有时间,我建议您在 Apple 的 bug reporting system.

上提交功能请求