Я создаю .graphicCorner
услугу ClockKit, используя шаблон CLKComplicationTemplateGraphicCornerTextImage
.Как уже упоминалось в Tech Talk Разработка осложнений для Apple Watch Series 4 , должна быть возможность комбинировать несколько разноцветных провайдеров текста.
К сожалению, я могу заставить его работать.
Вот мой код от ComplicationController.swift
func getLocalizableSampleTemplate(for complication: CLKComplication, withHandler handler: @escaping (CLKComplicationTemplate?) -> Void) {
switch complication.family {
…
case .graphicCorner:
if #available(watchOSApplicationExtension 5.0, *) {
let template = CLKComplicationTemplateGraphicCornerStackText()
let firstTextProvider = CLKSimpleTextProvider(text: "first")
firstTextProvider.tintColor = UIColor.green
let secondTextProvider = CLKSimpleTextProvider(text: "second")
secondTextProvider.tintColor = UIColor.red
let thirdTextProvider = CLKSimpleTextProvider(text: "third")
thirdTextProvider.tintColor = UIColor.blue
template.outerTextProvider = firstTextProvider
template.innerTextProvider = CLKTextProvider.localizableTextProvider(withStringsFileFormatKey: "STRINGFORMAT", textProviders: [secondTextProvider, thirdTextProvider])
handler(template)
} else {
handler(nil) // Fallback on earlier versions
}
default:
handler(nil)
}
}
и содержание моего ckcomplication.strings
"STRINGFORMAT" = "%@ %@";
Текст не будет отображаться.Что я здесь не так делаю?Я ценю любую идею или рабочие примеры.