отображение разных представлений на основе состояния, проверенного в контроллере представлений - PullRequest
0 голосов
/ 01 августа 2010

Я хочу, чтобы мой контроллер представления отображал различные представления на основе условия, которое зависит от некоторых проверок во время выполнения (например, uiwebview в четные часы и форма в нечетные часы). Каков наилучший шаблон для достижения этого в проекте iphone? Может быть, я могу скрыть элементы управления на основе вышеупомянутого условия или, может быть, лучше загружать различные виды? или, может быть, я должен загрузить различные контроллеры представления и сделать проверку в моем родительском контроллере представления?

1 Ответ

0 голосов
/ 01 августа 2010

Интерфейс iPhone настолько мал и переполнен, что обычно лучше создать другую пару view / view-controller для разных UI.Сокрытие элементов пользовательского интерфейса оставляет пропуски, которые очень заметны, и ручная перестановка элементов пользовательского интерфейса на лету - это боль.

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

Это очень плохой дизайн пользовательского интерфейса, когда одно и то же действие пользователя представляет другой пользовательский интерфейс без видимой для него причины.Например, представление «uiwebview в четные часы и формы в нечетные часы» было бы фантастически плохой идеей, потому что пользователь не знал бы, почему нажатие на определенную кнопку иногда дает им веб-представление и представление формы в другое время.Ожидаете ли вы, что пользователь проверит часы перед тем, как щелкнуть, чтобы они знали, чего ожидать?

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

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