私はこの分野では初心者なので、我慢してください:)
LayoutInflater を使用して、GridView をアイコン + テキストで設定しています。以下のように使用すると、すべてうまくいきます。しかし、コメントマーク「//」を削除すると、すべてが台無しになります。アイコンが間違った順序で表示され、いくつかの場所で二重になっています。
View v;
// if (convertView == null) { // if it's not recycled, initialize some attributes
LayoutInflater li = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = li.inflate(R.layout.icon, null);
TextView tv = (TextView)v.findViewById(R.id.icon_text);
tv.setText(kraj[position]);
ImageView iv = (ImageView)v.findViewById(R.id.icon_image);
iv.setImageResource(mThumbIds[position]);
iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
iv.setLayoutParams(new LinearLayout.LayoutParams(mniejszy, mniejszy));
// } else {
// v = (View) convertView;
// }
return v;
これは、コードの一部を取得したチュートリアルです: http://developer.android.com/guide/topics/ui/layout/gridview.html