0

Я создал view pager, у него есть изображения, которые поступают с сервера. Разрешение: 980X551.Как растянуть изображение, не нарушая соотношение сторон изображения в Android?

Мне нужно отобразить это изображение в половине экрана.

В макете ViewPage я установил widthXheight изображения на match_parent.

и в моем MainActivity, я использую вес, чтобы определить высоту ViewPager.

Проблема заключается в том, что, на мой Main Activity, когда я увеличить высоту изображения, его начало растяжения, и мне нужно, чтобы показать это в полстраницы., И выглядел довольно растягиваться, когда я установить его высоту на половину экрана ,

Просьба направлять меня, как растянуть изображение, не нарушая пропорции изображения в Android

View Пейджер Код

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


    <ImageView 
     android:id="@+id/image_view" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:adjustViewBounds="true" 
     android:scaleType="fitCenter" 
     /> 

</RelativeLayout> 

Главная активность

<FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="6" 
     android:id="@+id/frameLayout2" 

     > 

     <android.support.v4.view.ViewPager 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/viewPager" 
      android:adjustViewBounds="true" 
      android:scaleType="fitCenter" 
      /> 
+0

Можете ли вы предоставить полные файлы макета? Вы уверены, что изображение растянуто и не обрезано? – skywall

+0

Да, растянутый, я добавляю код макета – Kirmani88

ответ

1

Использование Pisasso library для Android

Среди множества других опций вы можете загружать и изменять размер изображений.

Пример кода может быть:

Picasso.with(context) 
    .load(url) 
    .resize(screeWidth/2, screen height/2) 
    .centerCrop() 
    .into(imageView); 
1

centerCrop вариант может быть соответствовать вашей ситуации. И adjustViewBounds не требуется.

так:

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


    <ImageView 
      android:id="@+id/image_view" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:scaleType="centerCrop"/> 

</RelativeLayout> 
Смежные вопросы