Я предполагаю, что вы знаете, что вы должны использовать масштабируемые единицы, как указано в ответе Винай:
http://developer.android.com/guide/practices/screens_support.html
Я настоятельно рекомендую не отклоняться от "лучших практик", если толькоВы действительно знаете, что делаете.Это может принести вам только проблемы в будущем.Я не профессионал, поэтому я стараюсь следовать стандартам.Хорошо, теперь давайте ответим:
Если вы хотите использовать разные размеры, а масштабируемых единиц недостаточно, вы должны объявить их где-то .Таким образом, вы будете объявлять разные файлы, несмотря ни на что ... это неизбежно.Но опять же, только когда ваших масштабируемых единиц недостаточно для обеспечения желаемого визуального эффекта на разных экранах.
Для этого вы объявляете в value
папки.Вы видели источник приложения ввода-вывода Google в коде Google?Это "Google", и они делают это очень хорошо.Если вы хотите учиться на примере, это, вероятно, самый полный ресурс, который я могу придуматьНо поначалу это немного пугает.
Здесь так много нужно сказать (много простых вопросов ... похоже, вы действительно не знаете свой путь, извините, если это не так), что вы, вероятно, лучшене загружать это дерево исходных текстов.
Конечно, папки value
s и layout
s работают прозрачно (в этом весь смысл использования стандартов), поэтому вам не нужнобеспокоиться о вариациях экрана в макетах (при обращении к стилям значений ключа) и / или во время выполнения (при обращении как к стилю, так и к макету).