Общий, многократно используемый экран конфигурации iPhone-App - PullRequest
4 голосов
/ 14 марта 2010

Я пишу код, который позволит моему iphone-приложению иметь «страницу конфигурации».

Сгруппированный, прокручиваемый, UITableView ... с ячейками, которые содержат необходимые текстовые поля, переключатели, ползунки,и т. д.

Это огромное количество кода.Есть ли более простой способ?

Есть ли способ, которым я мог бы создать простой текстовый файл, содержать все мои желаемые варианты дизайна и заставить мой (многоразовый) код создать TableView для меня?

Или ... я могу просто сделать все быстрее / проще в Интерфейсном Разработчике вместо кода?

Ответы [ 4 ]

5 голосов
/ 14 марта 2010

В основном здесь есть два подхода:

  • вы полагаетесь на то, что Apple дает вам, и внедряете настройки пакета (в основном это словарь, описывающий, как должен выглядеть экран настроек), а затем ваши настройки будут в приложении «Настройки» iPhone.

    Недостаток в том, что возможности Apple весьма ограничены, и вы не сможете реализовать некоторые из самых сложных настроек, которые вы можете увидеть в «стандартных» (предустановленных) настройках приложения Apple.

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

  • Вы переопределяете свой собственный UIViewController для настроек или полагаетесь на какую-то инфраструктуру, которая предоставит вам UIViewController для расширения и упрощения вашей реализации. Для этого есть 2 хороших фреймворка (Джесси привел один из них, но есть еще один)
  • InAppSettings (http://inscopeapps.com/blog/inappsettings-10/)
  • InAppSettingsKit (http://inappsettingskit.com/)

Сравнение двух рамок можно найти здесь: http://inscopeapps.com/blog/inappsettings-vs-inappsettingskit/ (Хорошо, это от одного из двух авторов, но, по крайней мере, это дает представление;)

2 голосов
/ 14 марта 2010

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

Вы можете проверить документацию Apple для этого: http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ApplicationSettings/ApplicationSettings.html

Клаус

1 голос
/ 14 марта 2010

Если вы ищете готовое и многоразовое решение, вы можете проверить http://www.inappsettingskit.com/

Это тоже открытый исходный код, поэтому он полезен в качестве основы.

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

Если вы говорите об использовании текстового файла или plist, вы можете имитировать дизайн пакета настроек приложения Настройки.

Загрузка данных plist при запуске приложения.

0 голосов
/ 14 марта 2010

Я построил что-то вроде того, что вы ищете. Если отбросить ответ Клауса, то он просто дублирует интерфейс приложения «Настройки», используя тот же файл settings.plist, что и приложение «Настройки». Единственное отличие состоит в том, что это контроллер представления, который вы можете поместить в приложение. В нем задействовано на удивление небольшое количество кода, просто нужно было посмотреть на приложение настроек, чтобы точно понять, как все было устроено.

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