2

画像とグリッドビューを表示したいギャラリーアイテムをクリックしたときに、Androidアプリケーションにギャラリーがあります。ギャラリーに画像が3つしかない場合に実行し、クリックすると正しく表示されます。しかし、現在、ギャラリーには7つの画像があり、各ギャラリーアイテムには、ギャラリーを表示する4つの画像があります。これでは、drwawable画像の配列のみを使用しています。今回は、Java.lang.OutOfMemoryとして例外が発生しました。以下のコードを使用します。

             public ImageThemeAdapter(Context c, Integer[] mImageIds) {
 imagesId=mImageIds;
 bitmap=new Bitmap[imagesId.length];
 mContext = c;
 TypedArray ta=obtainStyledAttributes(R.styleable.Gallery1);
    imageBackground=ta.getResourceId(R.styleable.Gallery1_android_galleryItemBackground, 1);
    ta.recycle();
    for (int i = 0; i <imagesId.length; i++) {
       bitmap[i]=BitmapFactory.decodeResource(mContext.getResources(),imagesId[i]);
    }
}

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

public Object getItem(int position) {
    return bitmap[position];  
}

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

public View getView(int position, View convertView, ViewGroup parent) {   

    ImageView i = new ImageView(mContext);

    i.setImageBitmap(bitmap[position]);
    i.setScaleType(ImageView.ScaleType.FIT_XY);
    i.setLayoutParams(new Gallery.LayoutParams(130, 120));
   // i.setLayoutParams(new Gallery.LayoutParams((ScreenWidth*80)/100, android.view.ViewGroup.LayoutParams.WRAP_CONTENT));
    i.setBackgroundResource(imageBackground);
    return i;   
}

と私のスクリーンショットここに画像の説明を入力してください

何か提案をお願いしますよろしくお願いします。

4

0 に答える 0