Лучшая практика для подготовки внешнего интерфейса - iPhone - PullRequest
0 голосов
/ 08 января 2012

Мой клиент хочет знать лучшие практики по созданию персонализированного контента для iPhone.Например, если есть кнопки с одинаковым стилем с настраиваемым фоном и разными заголовками, например, «Кнопка для отправки» и «Кнопка для возврата», лучше предоставить общее фоновое изображение и изменить заголовок во время выполнения или предоставить разные изображения для разных заголовков.,Предоставляет ли Apple какие-либо рекомендации относительно того же самого?Также, если я предоставлю название программно для разных кнопок, насколько возможна настройка?Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 08 января 2012

Моя практика состоит в том, чтобы создать индивидуальный фон, а затем использовать его с разными названиями. Это работает очень хорошо, так как UIButton предназначен для настройки.

Когда заголовки имеют разную длину, вы можете автоматически растягивать фоновое изображение до размера.

Пример:

// button-bg.png has size 30x60
UIImage* image = [[UIImage imageNamed:@"button-bg.png"] stretchableImageWithLeftCapWidth:15 topCapHeight:0];
[button setBackgroundImage:image forState:UIControlStateNormal];

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

0 голосов
/ 08 января 2012

Поместите текст поверх изображения, используйте локализации для любого «жестко закодированного» текста в вашей программе.Избегайте жесткого кодирования текста в изображение.Это трудно изменить позже, и это зависит от языка.

NSLocalizedString (@ "Отправить текст элемента", @ "Отправить");Вы можете использовать строки локализации для многих языков позже и расширить свою аудиторию.
Я рекомендую делать это с первого дня и поддерживать эту практику в своем коде, даже если вы уверены, что у вас никогда не будет не говорящего по-английски человека, использующегопрограмма.

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