Почему изображение имеет больший размер? - PullRequest
1 голос
/ 04 марта 2012

Я использую такой макет:

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/logo"
    android:orientation="horizontal" >

drawable/logo.xml:

<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/login_logo"
    android:gravity="center" />

drawable/login_logo.png имеет ширину 280 пикселей, моя ширина экрана Galaxy Tab составляет 600 пикселей, но в запущенном приложении я вижу, что изображение занимает почти всю ширину экрана и составляет около 500 пикселей

Где я ошибся?

решаемые
Установив

<uses-sdk android:minSdkVersion="4" />

и размещение изображения на drawable-hdpi

Ответы [ 3 ]

2 голосов
/ 04 марта 2012
  1. Как вы говорите, это для вкладки galaxy, поэтому она находится под drawable-hdpi. Поэтому измените разрешение изображения с помощью photoshop или чего-то еще и поместите его в drawable-hdpi.использовать android: layout_width = "wrap_content" .вместо android: layout_width = "fil_parent"
1 голос
/ 04 марта 2012

Вы устанавливаете изображение в фоновом режиме, а тег android:background использует 9 изображений патчей. Так что ваш фон всегда растягивается на ширину и высоту вида. Ширина макета установлена ​​на fill_parent, поэтому ширина изображения также составляет fill_parent. Решением может быть создание 9-патч-образа используемого вами png с расширением .9.png. Прочитайте здесь для рисования 9 изображений патчей - developer.android.com/guide/developing/tools/draw9patch.html

1 голос
/ 04 марта 2012

Я полагаю, что вы хорошо прочитали документацию . Если вы поместили ваше изображение в папку drawable-mdpi, то на экранах высокой плотности изображение будет иметь размер 1,5x. Вы должны будете предоставить разные разрешения вашего изображения для разных плотностей экрана.

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