2014-01-14 4 views
0

Я использую XML вытяжке:Изображение не масштабируется должным образом в Android.

<?xml version="1.0" encoding="utf-8"?> 
<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
    android:src="@drawable/splashscreen" 
    android:tileMode="disabled" android:gravity="top" > 
</bitmap> 

это мой ImageView в макете:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:id="@+id/splash_image" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="fitXY" 
     /> 

</RelativeLayout> 

, но независимо от того, что я делаю, это не помещается на экране, и появляется только в центре, как маленькое изображение. Где я иду не так?

ответ

0

Попробуйте использовать fill_parent Каждое устройство имеет другой размер экрана, так что вам нужно сделать различные заставки изображения для каждого размера и разрешения я предполагаю, что проблема заключается в использовании изображения небольшого размера (ширина высота) и дисплей большой так вам нужно масштабировать изображение, чтобы оно соответствовало размеру экрана, это может отражать изображение.

+0

Вы должны использовать 'MATCH_PARENT',' FILL_PARENT' устарел. Из [ViewGroup.LayoutParams] (http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html) 'FILL_PARENT (переименованный MATCH_PARENT в API 8 и выше), что означает, что представление хочет быть размером с родительский (минус заполнение) ' – quinnjn

+0

Слово« устаревшее »не упоминается в приведенной выше ссылке. Прочтите дважды! Он только говорит, что он был переименован (переименован! = Устарел). –

+0

Извините, извините, я догадался, что MATCH_PARENT был переименован. но я думаю, что другая часть права, это то, что я сделал для своего решения. делая разные изображения для разных размеров экрана. –

1

Возможно, это не лучшее решение, поскольку разные устройства имеют разные разрешения, но «wrap_content» отображает изображение в исходном разрешении.

<RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     > 

     <ImageView 
      android:id="@+id/splash_image" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/splashscreen" 
     /> 
    </RelativeLayout> 
Смежные вопросы