Новичок на андроид, есть вопрос по макетам в целом - PullRequest
0 голосов
/ 26 июня 2011

Я делаю новое приложение, и оно в основном заполнено информацией о Warcraft.

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

Приложение, которое я создаю, уже имеет 5 макетов, и, похоже, мне потребуется около 50-60 макетов.

Итак, теперь мой вопрос, нормально ли иметь такое количество макетов? Или я должен научиться делать один общий макет и продолжать использовать его? Например, как если бы мне нужно было отобразить информацию о теме, например, классы в Warcraft, которые представляют собой 10 разных классов с 2-3 разными справочными страницами в среднем для каждого класса, нужно ли мне создавать разные макеты для каждой страницы или их лучший способ сделать это?

Буду очень признателен за любые предложения / предложения.

Ответы [ 2 ]

3 голосов
/ 26 июня 2011

Что я рекомендую, так это иметь один макет для каждого типа экрана (в основном по одному на действие) и использовать Java для заполнения всей информации.Используйте getResources (). GetString (int id) и передайте что-нибудь из R.string.Это означает, что вам нужно хранить всю свою информацию в файле strings.xml в папке значений (находится в / res / values).Перечислите все свои представления в XML-файле макета, а затем найдите их по идентификатору и установите их значения.

Лучше всего хранить все строковые ресурсы в отдельном XML-файле, а не жестко кодировать их в макете (в противном случае это боль - заменить каждый экземпляр слова, которое вы поняли, что написали с ошибкой или что-то в этом роде).Если вы не знаете, как писать XML, это нормально, поскольку в Eclipse есть инструменты, но я НАСТОЯТЕЛЬНО рекомендую изучить его.

2 голосов
/ 26 июня 2011

Вы можете повторно использовать макеты без проблем. На самом деле для поддержки кода это очень хорошая идея. Никто не хочет поддерживать более 50 макетов и связанного кода.

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