【问题标题】:watchOS Complication - How to tell watchOS to update the TimelinewatchOS 并发症 - 如何告诉 watchOS 更新时间线
【发布时间】:2017-12-18 08:01:10
【问题描述】:

我为带有时间旅行的表盘编写了一个复杂功能。但是,我希望 watchOS 能够“刷新”时间线(比如每小时),以便它会删除当前时间线,然后再次调用 getTimelineEntries 以获得新的时间线。

有可能吗?谢谢。

【问题讨论】:

    标签: timeline watchos apple-watch-complication


    【解决方案1】:

    如果要在当前钟面的不同插槽中安装多个应用程序的复杂功能,最好调用“reloadTimelineForComplication:”来处理所有活动的复杂功能。

    for (CLKComplication* complication in CLKComplicationServer.sharedInstance.activeComplications)
    {
        //NSLog(@"Reloading Timeline for Complication: %@", complication);
        [CLKComplicationServer.sharedInstance reloadTimelineForComplication:complication];
    }
    

    来自文档:CLKComplicationServer.activeComplications:此属性包含一个 CLKComplication 对象数组,每个对象代表当前显示在钟面上的复杂功能的一个版本。此数组通常没有条目或只有一个条目,但如果您的复杂功能安装在钟面上的多个插槽中,它可能有多个条目。

    【讨论】:

      【解决方案2】:

      当你想刷新并发症数据时,你可以像这样触发刷新,

      [[CLKComplicationServer sharedInstance] reloadTimelineForComplication:[[[CLKComplicationServer sharedInstance] activeComplications] firstObject]];
      

      参考可以查看here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-08
        • 2018-09-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-12-09
        • 2022-11-05
        • 1970-01-01
        相关资源
        最近更新 更多