1

ViewPager.画像を表示しています 表示される画像は多くのスペースを占有します。いくつかの画像を表示した後、スローしますjava.lang.outofMemoryError: Bitmap size exceeds VM bugdet.

何がうまくいかないのかについての提案はありますか?

public Object instantiateItem(View pager, int position) {

    LayoutInflater inflater = (LayoutInflater) pager.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    View view = inflater.inflate(R.layout.fotopager_buttons, null);

    TextView text = ((TextView) view.findViewById(R.id.textView1));
    text.setText(Global.totalpaging_titlearray[position]);

    TextView textprice = ((TextView) view.findViewById(R.id.textprice));
    textprice.setText("SAR " + Global.totalpaging_pricearray[position]);

    TextView textdesc = ((TextView) view.findViewById(R.id.textdescription));
    textdesc.setText(Global.totalpaging_descarray[position]);

    ImageView imageView1 = ((ImageView) view.findViewById(R.id.image));
    bimage = getBitmapFromURL(Global.totalpaging_array[position]);
    imageView1.setImageBitmap(bimage);
    ((ViewPager) pager).addView(view);

    return view;
}
4

2 に答える 2

0

私が理解していることから、ビューページャーのページに画像を表示しています。ビューページャーは何ページ保持できますか?

1 ページのビットマップが VM の予算を超える場合は、ビットマップのサイズを変更するか、RGB565 や ARGB444 などの低メモリ カラー形式にデコードすることを検討してください。

コードがなければ、ビュー ページャーのページを適切にインスタンス化しているかどうかを判断することはできません。PagerAdapter クラスinstantiateItem(View view, int position)メソッドのコードを投稿できますか?

于 2012-07-06T06:10:56.137 に答える