커스텀 그리드 뷰를 만들었습니다.


어댑터를 만들어 

여기 그리드 뷰에 setAdapter를 해주었구요..


같은 방식으로 커스텀 리스트 뷰를 만들어 여기에 역시 다른 어댑터를 setAdapter 해주었습니다.


근데 리스트뷰는 문제가 없는데 

그리드 뷰의 어댑터 뷰내의 getView 가 계속 불려집니다.

스크롤을 한것도 아니고..

setAdapter한 시점 부터 getView가 계속 불리는데 이유가 무엇인지 모르겠습니다.


조언 부탁드립니다.ㅠㅠㅠㅠ

아래와 같이 하였구요...ㅠㅠㅠ

참고로 그리드 뷰의 크기는 dp단위로 지정해주었구요.

3개의 그리드뷰가 존재합니다.

이 것이 원인이 될 수도 있을까요???


Aa = new AppAdapter(this, pkgAppsList);

gv_apps.setAdapter(Aa);



public class AppAdapter extends BaseAdapter {


    List<ResolveInfo> child;


        public AppAdapter(Context localContext, List<ResolveInfo> objects) {

            child = objects;

        }


        public int getCount() {

            return pkgAppsList.size();

        }

        public Object getItem(int position) {

            return position;

        }

        public long getItemId(int position) {

            return position;

        }

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

            if (convertView == null) {

            LayoutInflater li = (LayoutInflater) getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE);

     convertView = li.inflate(R.layout.listitem_apps, null);

            }

     ImageView icon = (ImageView) convertView.findViewById(R.id.ivIcon);

     TextView name = (TextView) convertView.findViewById(R.id.tvName);

   

     ResolveInfo temp = pkgAppsList.get(position);

     icon.setImageDrawable(temp.loadIcon(getPackageManager()));

   

     name.setText(temp.loadLabel(getPackageManager()));

     name.setMaxLines(2);

     name.setTextColor(Color.rgb(215, 215, 215));

     Log.d("CHECK", "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");

   

            return convertView;

        }

    }