Обновление ярлыка в реальном времени в зависимости от даты Swift - PullRequest
0 голосов
/ 02 декабря 2019

Я пытаюсь создать приложение, которое сообщает, открыт ли магазин или нет, и у меня внутри пользовательского интерфейса есть ярлык "Открыть / Закрыть".

Я бы хотел изменитьсодержание этого ярлыка в зависимости от того, который час: у меня уже есть функция, которая возвращает - с учетом текущего времени и графика - если магазин открыт или нет, но я не знаю, как вызывать его каждый раз, когда время меняется.

Спасибо

Ответы [ 2 ]

1 голос
/ 02 декабря 2019

Вы должны обновлять этот пользовательский интерфейс каждую секунду или каждый желаемый интервал и запускать событие UpdateUI с помощью NotificationCenter или RxSwift, когда оно совпадает с вашим временем открытия / закрытия.

1 голос
/ 02 декабря 2019

Если вы хотите сообщить, когда изменится дата, вы можете подписаться на уведомления NSCalendarDayChanged. Вы получите уведомление при изменении календарной даты. (Предполагая, что ваше приложение работает.)

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...