2016-03-08 3 views
0

Итак, у меня есть это приложение таймера, которое я разрабатываю, и в нем есть настройка для изменения от минут: от секунд до часов: минут: секунд. Это означает, что мне нужно настроить пользовательский интерфейс приложения после изменения настройки. Учитывая, что у меня уже есть ограничения на пользовательский интерфейс, как я могу это сделать?Как я могу переключаться между двумя макетами? (Swift)

Когда он установлен в минуты: секунды, он показывает это: minutes:seconds

, а затем, когда он установлен в часы: минуты: секунды, я хочу, чтобы пользовательский интерфейс, чтобы выглядеть следующим образом: hours:minutes:seconds

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

ответ

0

Создание двух пользовательских классов -

MinutesView 
HoursView 

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

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

Как только вы оба работаете. Поместите их в свою основную сцену, выложите их, как хотите.

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

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