有没有人知道如何在锻炼应用程序上实现这样的滑动面板?当你开始锻炼时,底部面板像页面一样滑动,但只有底部滑动而不是整个屏幕。这是如何实现的?我似乎找不到能做到这一点的任何事情?
答案 0 :(得分:3)
请注意:我对此问题的原始答案适用于watchOS 1.使用watchOS 2& 3,Apple彻底改进了我们在手表应用程序中可以做的事情。我还没有确定OP的原始目标是否可行。
简而言之,我认为你无法达到你想要的效果。我相信Apple正在整个应用程序中使用未记录的电话。
更长的解释......
我不是故意用另一个问题回答你的问题,但是你确定了如何复制Workout应用程序在你选择你想做的训练时演示的行为吗?
例如,如果您选择“户外周期”,则后续接口控制器(您要询问的接口控制器)将显示为pushControllerWithName:context:
和presentControllerWithNames:contexts:
之间的奇怪混合。
与当前时间配对的“< Outdoor Cycle”标题是pushControllerWithName:context:
呈现推送控制器的方式。相反,presentControllerWithNames:contexts:
是显示一组“分页”控制器的机制。此外,据我所知,没有机制可以改变Watch应用程序的全局色调颜色,但这正是您在要询问的页面上向左和向右滑动时所发生的情况。
这有点微妙,但是如果点击“锻炼”列表中的“户外循环”,您会注意到您所询问的页面会显示一个光滑的动画,将“户外循环”更改为“开始”。此行为无法与presentControllerWithNames:contexts:
一起复制,因为它始终从屏幕底部向上滑动模态界面。
显然,上述大多数都无法直接解决您的问题。它更多地解决了使您询问的控制器出现的问题。我将通过所有这些来证明Apple在其预装的应用程序中明显使用了未记录的功能。
更直接地解决您的问题:
WKInterfaceController
中没有“UIContainerView”(AKA添加子视图控制器)的概念。同样,这正是Workout应用程序中演示的行为。希望,毫无疑问,我会爱对上述任何或所有内容都不正确。如果我,请上学!