Ошибка памяти в галерее с линейным макетом - размер растрового изображения превышает бюджет виртуальной машины - PullRequest
0 голосов
/ 01 декабря 2011

Я получаю эту ошибку памяти (размер растрового изображения превышает ВМ), когда прокручиваю более 5 элементов моей галереи.Это моя последняя часть приложения, и я очень хочу закончить.Все изображения моей галереи 180х180.Я прочитал некоторые темы об ошибках памяти в StackOverFlow, но большинство из них говорят мне, чтобы я конвертировал мои изображения в растровые изображения, которые я не знаю, как это действительно работает.Если кто-то может опубликовать код решения для моей проблемы, я буду очень благодарен!Код здесь:

 public ImageAdapter(Context c) {
        mContext = c;
        TypedArray a = obtainStyledAttributes(R.styleable.HelloGallery);                  
        a.recycle();
    }

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

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

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

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

            if (convertView == null) {
                       LayoutInflater inflater = (LayoutInflater) 
                       mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                       convertView=inflater.inflate(R.layout.l1,null); 

     }
    HighscoreManager hm=new HighscoreManager();
        hm.addScore(timePerWord);         
        ImageView imgView = (ImageView)convertView.findViewById(R.id.imageView1);

        TextView txtView = (TextView)convertView.findViewById(R.id.textView2);                
        if(hm.getHighscoreString()[position]!=0)
        txtView.setText("\t\t    Avg.time: "+hm.getHighscoreString()[position]

);  

            txtView.setTextSize(20);
            imgView.setImageResource(mImageIds[position]);      
            return convertView;

     }

Где XML-файл L1: (не много, изображение и текстовый вид ниже)

  <?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/l1"
    android:layout_width="240dp"
    android:layout_height="fill_parent" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="240dp"
        android:layout_height="185dp"
        android:layout_x="-1dp"
        android:layout_y="-15dp"
        android:src="@drawable/background" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="fill_parent"
        android:layout_height="38dp"
        android:layout_x="0dp"
        android:layout_y="169dp"
        android:text=""
        android:gravity="center" />

</AbsoluteLayout>
...