iOS WatchOS5如何在GraphicRectangular并发症中自定义标题?

时间:2018-10-07 23:11:40

标签: ios12 apple-watch-complication watch-os-5 clktextprovider

我想从图形矩形并发症中删除文本,或将其设置为空字符串。默认情况下,它是应用程序名称。我试图在watchKit plist文件中将显示名称设置为“”,但这似乎并没有改变它。

如何从矩形长方形WatchOS5并发症中删除文本?

我看到有一种获取(分配?)CLKTextProvider的方法,如下所述:https://developer.apple.com/documentation/clockkit/clktextprovider但是,这似乎涉及添加可本地化的字符串文件,如果有仅获取CLKComplicationTemplateGraphicRectangularLargeImage

的图像的简便方法
    func getLocalizableSampleTemplate(for complication: CLKComplication, withHandler handler: @escaping (CLKComplicationTemplate?) -> Void) {
        // This method will be called once per supported complication, and the results will be cached


        if complication.family == .graphicRectangular {
            let template =  GraphicTemplate()
            template.textProvider = CLKSimpleTextProvider.init(text: "")
            handler(template)
        }else {
            handler(nil)
        }
    }


class GraphicTemplate: CLKComplicationTemplateGraphicRectangularLargeImage {

}

1 个答案:

答案 0 :(得分:0)

您无需弄乱可本地化的字符串(phe)。

您需要在两个地方设置并发症的外观。

  1. 示例模板-在用户自定义脸部并滚动可用并发症列表时向用户显示。如问题所示,您可以按照getLocalizableSample(for: withHandler:)方法为每个复杂问题族提供此样本。

  2. 您在getCurrentTimelineEntry(for complication: CLKComplication, withHandler handler: @escaping (CLKComplicationTimelineEntry?) -> Void)的{​​{1}}方法中提供的面部实际并发症。

在这两个地方都需要使用文本提供程序返回模板(如果没有,则将在运行时崩溃),尽管可以返回一个空字符串。这应该删除应用名称。

CLKComplicationDataSource

(顺便问一下,您看过最近的Apple Tech Talk about complications for watch os5吗?很好)。