В моем приложении я создаю панель кнопок в качестве части моего пользовательского интерфейса со следующим XML (обратите внимание, что это не весь макет, а только его часть):Android: странная проблема масштабирования на кнопке с topDrawable
<LinearLayout android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_centerHorizontal="true"
android:paddingTop="10dp">
<Button android:id="@+id/btnTopObjects"
android:layout_width="70dp"
android:layout_height="55dp"
android:drawableTop="@drawable/media_guide_object"
android:text="@string/media_screen_top_objects"
android:background="@drawable/media_guide_button"
android:textSize="9dp"/>
<Button android:id="@+id/btnTrails"
android:layout_width="70dp"
android:layout_height="55dp"
android:drawableTop="@drawable/media_guide_trail"
android:text="@string/media_screen_trails"
android:background="@drawable/media_guide_button"
android:layout_marginLeft="5dp"
android:textSize="9dp" />
<Button android:id="@+id/btnEvents"
android:layout_width="70dp"
android:layout_height="55dp"
android:drawableTop="@drawable/media_guide_event"
android:text="@string/media_screen_events"
android:background="@drawable/media_guide_button"
android:layout_marginLeft="5dp"
android:textSize="9dp" />
<Button android:id="@+id/btnVenueInfo"
android:layout_width="70dp"
android:layout_height="55dp"
android:drawableTop="@drawable/media_guide_venue"
android:text="@string/media_screen_venue_info"
android:background="@drawable/media_guide_button"
android:layout_marginLeft="5dp"
android:textSize="9dp" />
</LinearLayout>
Это дает достаточно правильные результаты, когда я тестирую его на экране 320x480. Панель кнопок выглядит так, что это именно то, что я хочу:
Однако на устройстве с 480x800 разрешение экрана, то же панель кнопок выглядит следующим образом:
Что на самом деле bizzarre - это то, как отображаются четыре кнопки. Первые три изображения уменьшаются, а последний отображается полноразмерным.
Все 4 изображения создаются одинаково в одной графической программе. Все они имеют 31x31 пиксель 72dpi. У меня нет проблем, если они все уменьшаются в соответствии с плотностью пикселей устройства, но я хочу, чтобы 4 изображения были одинакового размера! Как я могу это достичь?
Большое спасибо за любую помощь.
Одной из возможных причин является то, что изображение для «информации о месте» отсутствует в папке drawable-hdpi, и поэтому изображение с возможностью рисования или рисования-mdpi масштабируется (или наоборот) – tonys