2016-02-07 2 views

ответ

1

Вы можете использовать transferCurrentComplicationUserInfo, чтобы передать флаг, указывающий, должно ли отображаться изображение или нет, затем reloadTimelineForComplication. Ваш источник данных будет использовать флаг, чтобы определить, показывать или не показывать изображение.

Однако это не рекомендуется, так как это прекратит работу в течение оставшейся части дня, как только вы исчерпаете ежедневный бюджет вашего осложнения.

В CLKComplicationServer Class Reference документации государств от Apple:

Вызов этот метод, когда ваши данные осложнением больше не точны и должны быть полностью заменены. ClockKit сбрасывает все кэшированные данные и инициирует новый сеанс обновления для запроса новых данных из вашего источника данных об осложнениях. Если ваше усложнение уже превысило свой выделенный дневной бюджет для времени выполнения, вызовы этого метода ничего не делают.

Назовите этот метод экономно.

The CLKComplicationDataSource Protocol Reference объясняет причину:

Осложнения приведены только ограниченное количество времени выполнения каждый день, чтобы сохранить срок службы батареи.
...
Не просите систему обновить ваше осложнение в течение нескольких минут. Вместо этого предоставляйте данные длиться много часов или целый день.

+0

У вас есть источник fil, чтобы показать пример? Я новичок в разработке Apple Watch. Спасибо –

+0

Этот ответ будет слишком длинным, и запрос на ресурс будет не по теме. Вам нужно будет найти руководство или учебник об осложнениях, а также о возможности подключения к часам. SO не является кодовым письмом. Если вы столкнулись с проблемой, вы должны показать код, который используете, и объяснить проблему. SO предназначен для ответа на те типы проблем, в которых вы что-то пробовали, и столкнулись с проблемой. –

+0

Я добавил код complicationController наверху –

Смежные вопросы