2013-07-14 3 views
0

У меня 3 устройстваКак иметь разные макеты для устройств с одинаковой категорией?

1) Galaxy Nexus 720 * 1280 (xhdpi, нормальный размер категории)

2) Моторола 480 * 854 (hdpi, нормальный размер категории)

3) htc 320 * 480 (), категория нормального размера)

У меня есть xmls в моей папке макета. В моем xmls мне нужно фиксировать размеры для моих текстовых просмотров, Edittext (он будет расширяться при вводе текста).

Из-за этого у меня возникают проблемы с моими мобильными устройствами htc. Я не могу подготовить разные макеты, потому что эти 3 устройства находятся под макетом-нормальным (макет).

У меня есть текстовое изображение в прямоугольном фоне, при увеличении текста увеличивается прямоугольник.

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

пожалуйста предложить

Благодарности

+0

Разрешение влияет на ресурсы изображений, а не на макет. Физический размер экрана влияет на макет. –

+0

Мне нужно исправить мои текстовые изображения, размер Editext, потому что они будут расширены, если мы продолжим печатать текст. Мне нужно исправить эти значения. Как я могу это решить? – user2376732

+0

Используйте 'fill_parent',' match_parent' как высоту/ширину. Или используйте '0dp' как height/width с' layout-weight' от '0.0' до' 1.0'. –

ответ

1

Вы можете нацелить плотности, используя папку макета как layout-mdpi, layout-hdpi и layout-xhdpi. Зачем вам это делать? использование провалов для всего будет хорошо.

Edit: предложения, основанные на комментариях вы дали:

, используя значение как 200dp, коробки на всех устройствах вроде имеют одинаковый размер. Не в пикселях, а в фактическом размере на экране. Это то, что делают провалы (блок dp).

Предполагается, что экраны будут выглядеть одинаково на разных размерах устройства. Прочтите описание на странице http://developer.android.com/guide/practices/screens_support.html, в частности раздел с названием «Независимость от плотности».

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

  1. в макете XML определяет ширину, как android:layout_width="@dimen/the_width"

  2. В значениях папки, создайте файл values.xml. Определите такой размер как <dimen name="the_width">200dp</dimen>. 200dp является примером и будет значением по умолчанию.

  3. Переопределите это значение в папках значений-hdpi, values-xhdpi и/или values-mdpi, создав те же значения.xml, но с другим значением для the_width.

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

+0

нет, у меня есть фон, как прямоугольная коробка внутри, будет текст, если у меня есть текст некоторого 1 строка с фиксированным размером, тогда, когда дело доходит до motorolo, htc, этот фон расширяется. – user2376732

+0

Можете ли вы добавить несколько скриншотов, чтобы показать, что вы имеете в виду? Мне трудно понять это, не видя этого. Можете ли вы также опубликовать layout.xml, который используете сейчас? – nickmartens1980

+0

уверен, дайте мне немного времени, пожалуйста, попробуйте понять мои слова. У меня есть EditText с фоном, если я дам wrap_content и продолжаю добавлять текст, это будет расширяться, поэтому я исправил эту ширину. – user2376732

Смежные вопросы