Layout Manager, или есть лучшее решение? - PullRequest
1 голос
/ 11 октября 2010

У меня есть табличное представление, где ячейки могут отображать переменное количество информации.Например, первая ячейка может отображать 2 метки, следующая ячейка - 5 меток, а третья ячейка может отображать 1 метку.Содержимое ячейки хранится в управляемых объектах.

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

Есть ли лучший способ сделать это с помощью UIKit?Я понимаю, что в конечном итоге я мог бы использовать Core Text для визуализации текста, но я хотел бы, чтобы это было деталью реализации.Во-первых, я был бы рад, если бы у меня были динамически настраиваемые метки UIL.

РЕДАКТИРОВАТЬ:

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

1 Ответ

3 голосов
/ 11 октября 2010

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

Говоря о более универсальной идее "менеджера компоновки", не забывайте, что система NIB / XIB является эффективно управляемой данными компоновкойсам двигатель.Если вы думаете о чем-то достаточно универсальном, чтобы указать явные макеты и свойства представлений, подумайте, что это, в основном, файлы XIB - схематизированный XML-макет.См. Документацию инструмента командной строки ibtool (man-страница здесь ), чтобы узнать больше о том, как вы можете манипулировать ими.

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

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