Растяните просмотр изображений в галерее, чтобы они соответствовали размеру экрана

#android

#Android

Вопрос:

У меня есть галерея с изображениями того же размера..
В портретном режиме изображения занимают весь экран, и это работает хорошо, хотя в альбомной ориентации изображения не растягиваются на весь экран, и части других изображений также отображаются на том же экране..
Вот графический адаптер, который я использую:

общедоступный класс ImageAdapter расширяет BaseAdapter { int mGalleryItemBackground; счетчик int = 0 ;

 private Context mContext;

public String[] mImageIds;

public ImageAdapter(Context c) {
    mContext = c;
    TypedArray a = c.obtainStyledAttributes(R.styleable.Gallery1);
    mGalleryItemBackground = a.getResourceId(R.styleable.Gallery1_android_galleryItemBackground, 0);
    a.recycle();
}

public void insert(String string)
{
    mImageIds[counter]=string;
    counter  ;
}

public int getCount() {
    return mImageIds.length;
}

public Object getItem(int position) {
    return position;
}

public long getItemId(int position) {
    return position;
}

public View getView(int position, View convertView, ViewGroup parent) {
    ImageView i = new ImageView(mContext);

    i.setImageBitmap(BitmapFactory.decodeFile(mImageIds[position]));

    i.setScaleType(ImageView.ScaleType.FIT_XY);
    i.setBackgroundResource(mGalleryItemBackground);

    return i;
     }
      }
  

XML-файл:

     <ScrollView 
android:id="@ id/QuranGalleryScrollView" 
android:layout_height="fill_parent" 
android:layout_width="fill_parent">
<Gallery android:id="@ id/GalleryLandscape" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent">
</Gallery>
    </ScrollView>
  

Как можно растянуть просмотры изображений внутри галереи, чтобы они соответствовали размеру экрана?
Спасибо

Ответ №1:

В вашем getView() методе добавьте эту строку:

 i.setLayoutParams( new Gallery.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT));
  

Это то, что работало у меня раньше, попробуйте!

Комментарии:

1. Если у вас предварительная версия Android 2.1, используйте FILL_PARENT вместо MATCH_PARENT . (Он был переименован в Android 2.2.)