2010-11-27 2 views
2

Я хотел бы предложить пользователям приложений несколько различных скинов для использования в приложении, черную кожу по умолчанию, а затем сказать белую кожу. Возможно, они позволяют устанавливать шрифты и/или цвет шрифта на сайт для заголовков или что угодно.ipad app skinning структура/методология?

Что было бы лучшим подходом для этого? Очевидно, я не хочу, чтобы это повлияло на скорость моего приложения.

ответ

0

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

В некоторых моих приложениях я использую JSON-файл (или, альтернативно, XML), но это больше подходит для синтаксического анализа). Существует TouchJSON (github.com/schwa/TouchJSON), который отлично справляется с простым преобразованием файла в NSDictionary, который легко доступен. Например, вы можете хранить цвета и названия шрифтов и размеры в таком файле и читать один из них во время запуска.

1

У вас в основном есть 3 варианта.

  1. HTML5 + CSS в UIWebView
    В зависимости от ваших потребностей, наиболее гибкий способ будет обеспечивать часть пользовательского интерфейса с помощью UIWebView, как HTML5 и CSS, и пусть пользователи (или тематические решения) создавать разные стили на основе CSS. Это то, что делают большинство приложений; IM + или Colloquy, например.

  2. Изменение собственного средств управления с помощью подклассов их
    компании Apple может отказаться от приложений, которые изменяют собственные элементы управления и представление. Таким образом, это не безопасный вариант, если вы хотите отправить свое приложение в App Store.

  3. Создайте свой собственный UIView подклассов и реализовать их поведение
    Вариант три будет рисовать свои собственные элементы управления с помощью подклассов UIView, но это могло бы быть больше работы, чем он стоит. Вы найдете это во многих играх на iOS.

+0

Это родное приложение, так что 1 и 2 из них, я думал больше о месте для хранения цветов и шрифтов, на которые ссылаются, когда отображается интерфейс. – Slee

+1

Для этого я бы предложил использовать что-то простое. В некоторых моих приложениях я использую JSON-файл (или, альтернативно, XML), но это больше подходит для анализа. Существует TouchJSON (https://github.com/schwa/TouchJSON), который отлично справляется с простым преобразованием файла в NSDictionary, который легко доступен. Например, вы можете хранить цвета и названия шрифтов и размеры в таком файле и читать один из них во время запуска. – BastiBen

+0

badcat измените это на ответ, чтобы я мог принять его - это направление, которое я выбрал. – Slee