2016-09-20 2 views
0

Я использую RecyclerView и GridLayoutManager для создания галереи. Я хочу, чтобы портретные и альбомные изображения отображались в одном и том же размере в сетке. Как я могу это сделать?Forcing RecyclerView для отображения всех изображений одного размера

+0

Я попытался установить поля и использовать setScaleType (ImageView.ScaleType.CENTER_CROP). Я также попробовал метод, который кто-то написал. Все они просто приводят к тому, что изображение рядом с портретным изображением становится искаженным. – Hannah

+0

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

+0

Если вы хотите, чтобы они были пропорциональными, I.e. не растягивается, тогда вам, вероятно, придется обрезать изображения с помощью некоторой логики и создавать новые растровые изображения. Есть множество сообщений об обрезании изображений в Android программно - просто поиск. –

ответ

0

Это сработало для меня.

if (image.getWidth() >= image.getHeight()){ 
    image = Bitmap.createBitmap(image, image.getWidth()/2 - image.getHeight()/2, 0, 
     200,200);} 
else 
{image = Bitmap.createBitmap(image, 0, image.getHeight()/2 - image.getWidth()/2, 
    200, 200);} 
0

С какой проблемой вы сталкиваетесь. Просто добавьте фиксированный размер в свое изображение.

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    /> 
Смежные вопросы