如何使用目标 C 填充 getPlaceholderTemplateForComplication



所以这里的本教程非常好

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;
    }   
}

您将创建一个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;
    }
}

最新更新