Пользовательские стили iOS Interface Builder? - PullRequest
9 голосов
/ 22 сентября 2011

Простой вопрос.Кто-нибудь знает, почему Interface Builder не позволяет применять пользовательские стили к элементам пользовательского интерфейса?Почему это возможно сделать только программно?

Я вижу, как это может быть сложно для пользовательских подклассов UIView, но элементы управления по умолчанию определенно имеют лишь небольшое подмножество опций стиля, доступных через IB, таких как цвет фона или изменение цветов шрифта.Почему это так?Есть ли какой-нибудь способ приблизиться к такой концепции, как темы приложения, через IB?

Ответы [ 4 ]

4 голосов
/ 22 сентября 2011

Мое личное ощущение, что Apple делает это правильно.Они предоставляют элементы и стили, которые соответствуют HIG.Если они начнут добавлять другие элементы / стили, тогда с чего начать и где они будут рисовать линию?

Кроме того, Apple не запрещает активно использовать собственные элементы / стили, они просто неэто в наборе инструментов.

Последнее, что нам нужно, это полный набор инструментов.

3 голосов
/ 22 сентября 2011

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

Конечно, вы можете создавать интерфейсы, используя свои собственные подклассы стандартного интерфейса.элементы в IB.Это немного больше работы, так как вам нужно изменить тип каждого объекта, который вы добавляете, с UIButton на MyGreenButton или что-то еще, но это не сложно.

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

1 голос
/ 22 сентября 2011

К сожалению, вы находитесь во власти Всемогущего Яблочного Божества ..... Поклонитесь им и поблагодарите, что у вас есть то, что они дают вам ..... смеется ...

Серьезно,Apple вкладывает то, что хочет Apple, и вы можете запросить дополнения, но IB довольно минималистичен в плане возможностей.

Я думаю, что это может быть задумано.Какая-то элегантная простота?

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

Если вы узнаете иначе, я определенно буду во всех ушах.

0 голосов
/ 06 августа 2015

Я думаю, что Apple должна позволить вам настроить больше элементов управления, для игр требуется слишком много времени, чтобы сделать пользовательский элемент управления (вы можете сделать это быстрее в Android, как вы можете настроить его в XML)

Кстати, PaintCode - это еще один вариант создания собственного стиля для компонентов, он будет генерировать код, но больше похож на конструктор интерфейсов

http://www.paintcodeapp.com/

...