【问题标题】:Apple Watch Complication Tint ColorApple Watch 复杂功能色调颜色
【发布时间】:2017-09-25 16:36:47
【问题描述】:

我正在尝试为并发症模板图像添加色调。当我滚动选项以自定义我的表盘时,色调颜色是正确的。但是,一旦我选择了复杂功能并返回到正常的表盘状态,颜色就会变回白色。

- (void)getLocalizableSampleTemplateForComplication:(CLKComplication *)complication withHandler:(void(^)(CLKComplicationTemplate * __nullable complicationTemplate))handler {
  CLKComplicationTemplateModularSmallSimpleImage *modularTemplate = [[CLKComplicationTemplateModularSmallSimpleImage alloc] init];
  CLKImageProvider *imageProvider = [CLKImageProvider imageProviderWithOnePieceImage:[UIImage imageNamed:@"Complication/Modular"]];
  imageProvider.tintColor  = [UIColor colorWithRed:0.412 green:0.443 blue:0.773 alpha:1.000];
  modularTemplate.imageProvider = imageProvider;
  handler(modularTemplate);
}

定制: Tint is correct while customizing

选择并发症后: Tint is gone and it's back to a white image

【问题讨论】:

  • 您问题中的函数只处理选择并发症时显示的 模板。您需要在准备实际复杂数据的函数中复制相同的行为。
  • @DávidPásztor 谢谢。成功了!

标签: apple-watch apple-watch-complication


【解决方案1】:

正如大卫在 cmets 中提到的,问题中的函数只处理 模板,您需要在准备实际复杂数据的函数中复制相同的行为。

添加以下代码以使色调颜色在选择阶段后保持不变:

- (void)getCurrentTimelineEntryForComplication:(CLKComplication *)complication withHandler:(void(^)(CLKComplicationTimelineEntry * __nullable))handler {
  CLKComplicationTemplateModularSmallSimpleImage *template = [[CLKComplicationTemplateModularSmallSimpleImage alloc] init];
  CLKImageProvider *imageProvider = [CLKImageProvider imageProviderWithOnePieceImage:[UIImage imageNamed:@"Complication/Modular"]];
  imageProvider.tintColor  = [UIColor colorWithRed:0.412 green:0.443 blue:0.773 alpha:1.000];
  template.imageProvider = imageProvider;
  handler([CLKComplicationTimelineEntry entryWithDate:[NSDate date] complicationTemplate:template]);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 2016-03-17
    • 2017-11-22
    • 1970-01-01
    • 2016-01-03
    • 1970-01-01
    相关资源
    最近更新 更多