1

所以这里的教程非常好

http://www.sneakycrab.com/blog/2015/6/10/writing-your-own-watchkit-complications

这告诉我我需要设置 fillFraction、ringStyle 和 textProvider,但它并没有从文档中跳出我需要在目标 c 中做的事情,而且我尝试了许多我能想到的组合。谁能帮助我理解完成新 watchOS 复杂模板中的样板代码?

- (void)getPlaceholderTemplateForComplication:(CLKComplication *)complication withHandler:(void(^)(__nullable CLKComplicationTemplate *complicationTemplate))handler {
    /

    switch (complication.family) {
        case CLKComplicationFamilyCircularSmall:

            // WHAT DO I PUT HERE? confused.com

            break;

        default:
            break;
    }

}

我想通过我的 ios 应用程序的更新来测试一个小的循环并发症。

在我全力以赴之前,有人帮助我理解吗?

非常感谢尼克

在与@mipadi 简短交谈后更新 :-) 和一个小调整。

- (void)getPlaceholderTemplateForComplication:(CLKComplication *)complication withHandler:(void(^)(__nullable CLKComplicationTemplate *complicationTemplate))handler {
    switch (complication.family) {
        case CLKComplicationFamilyCircularSmall:
        {
            CLKComplicationTemplateCircularSmallRingText *myComplicationTemplate; // Create template object
            myComplicationTemplate.fillFraction = 0.7;
            myComplicationTemplate.ringStyle = CLKComplicationRingStyleOpen;
            handler(myComplicationTemplate);
        }
        default:
            break;
    }   
}
4

1 回答 1

1

您将创建一个 a 的实例CLKComplicationTemplate并将其传递给处理程序:

- (void)getPlaceholderTemplateForComplication:(CLKComplication *)complication withHandler:(void(^)(__nullable CLKComplicationTemplate *complicationTemplate))handler {
    switch (complication.family) {
    case CLKComplicationFamilyCircularSmall: {
        CLKComplicationTemplate *myComplicationTemplate = [CLKComplicationTemplate new]; 
        // Create your template object
        handler(myComplicationTemplate);
        break;
    }
    default:
        break;
    }

}
于 2015-06-17T17:27:11.987 回答