ios - getPlaceholderTemplateForComplication() 方法何时被调用?

标签 ios swift watchkit apple-watch-complication clockkit

我正在尝试为 WatchOS 应用构建一个简单的复杂功能模板,但我一直在尝试了解 ComplicationController 类的方法 getPlaceholderTemplateForComplication() 何时会被使用调用。

苹果的文档说

When your app is first launched, ClockKit calls this method,

但是如果我运行模拟器,它通常不会启动。

关闭并重新打开“在 Apple Watch 上显示应用”并没有帮助。

什么时候会调用 getPlaceholderTemplateForComplication() 方法?

最佳答案

当您自定义表盘并选择要显示的复杂功能时,将调用占位符模板。系统调用 getPlaceholderTemplateForComplication() 一次,然后缓存结果。每次您自定义复杂功能时,它都不会继续调用该方法。

当您滚动浏览复杂功能选项时,显示的静态详细信息是为占位符模板返回的详细信息。

一旦您的复杂功能处于事件状态(显示在表盘上),就不会调用占位符模板。相反,时间线条目来自这些 complication dataSource方法:

  • getCurrentTimelineEntryForComplication,也可以选择来自
  • getTimelineEntriesForComplication(如果支持时间旅行)。

安装或删除 watch 应用与占位符模板无关。

对于 watchOS 3:

watchOS 3 支持面孔库,可以让用户查看和自定义表盘和复杂功能。图库中显示的静态复杂功能数据也来自占位符模板。

关于ios - getPlaceholderTemplateForComplication() 方法何时被调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38103046/

相关文章:

iphone - 滑动手势有帮助吗?仅 LeftSwipe 有效,而 RightSwipe 无效

objective-c - IOS如何获取应用程序的唯一标识

ios - 如何防止触发多个位置通知

ios - swift 3 Xcode : How to display battery levels as an integer?

ios - WatchKit NSAppTransportSecurity 错误

swift - 复杂功能未出现在图库中

ios - 获取推特用户信息

ios - 如何存储两个对象的数组

swift - 是否可以使用 Swift 编程以 0.01 的间隔更改 currentPlaybackRate?

objective-c - NSInvalidUnarchiveOperationException 无法解码 Apple Watch 扩展中的对象错误