2013-09-06 1 views
1

У меня возникли некоторые проблемы в приложении, которое я developping в Android:Android Не уважая мой Рез папку

Мы создаю приложение с поддержкой нескольких экранов, идущая от Samsung Galaxy Ace к Samsung Galaxy Tab 2 10.1, поддержка небольших, средних, больших и х-больших экранов, но, как-то Android не уважает мои папки layout-xxxx. В редакторе визуальных макетов Eclipse, когда я меняю экран, он перемещает меня в нужную папку для представления этого макета. Но в Android, эмуляторе или реальном устройстве макеты в их папке отображаются неверно. Моя структура папок, как те, упоминалось в Android Developer: Рез/макет-хххх разреш/значения-XXXX

Я также читал, что с Android Honeycomb, нечто изменилось, маленькие, большие, XLarge классификаторы стал осквернен. Итак, мы создали папки с использованием layout-swdp, и мы думали, что это будет решение для устройств с сотовой связью +. Но вскоре мы поняли, что это не сработало. Итак, есть ли точный способ сделать это ?. Чтобы заставить Android уважать или усиливать, эти папки ?. Кроме того, в Android 2.2 при использовании Dimens приложение не запускалось. Он говорит, что нет dimen 0x01. Заранее спасибо.

ответ

1

Personaly Я бы использовал плотность пикселей экрана (dpi) для каждого макета.

То есть:

ldpi: Low-density screens; approximately 120dpi. 
mdpi: Medium-density (on traditional HVGA) screens; approximately 160dpi. 
hdpi: High-density screens; approximately 240dpi. 
xhdpi: Extra high-density screens; approximately 320dpi. 
Added in API Level 8 

См http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

+0

Должен ли я использовать layout-ldpi, layout-mdpi, ...? – NemesisDoom

+0

@NemesisDoom Это должно помочь altought не уверен, почему то, что вы делаете, не работает –

+0

Подождите секунду, я собираюсь реализовать то, что вы сказали мне, и посмотреть результат, – NemesisDoom

0

Папка должна быть:

values> Стандартный экран телефона экран

values-sw600dp> 7" телефон/планшет

values-sw720dp> 10 "таблетка

Вы должны инициализировать <dimen name="myvariable"></dimen> в файле XML в этих папках и вызвать внутри вашего XML.

Пример:

<Button 
android:id="@+id/btnHome" 
android:layout_width="@dimen/myvariable" 
android:layout_height="@dimen/myvariable" 
android:text="" 
android:background="@drawable/homebutton" /> 

И это изменение размера в зависимости от размера экрана.

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

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