私のアプリケーションでは、リストビューを使用しており、標準の配列アダプターを拡張することで関連する配列アダプターをカスタマイズしています。ただし、拡張アダプター内では、ビューホルダーを静的内部クラスとして宣言できません。Eclipse は、「静的型は静的型または最上位型でのみ宣言できます」というエラーを出し続けます。コードは次のとおりです。
public class IconicAdapter extends ArrayAdapter<String>
{
public static class ViewHolder
{
public TextView text;
public ImageView image;
}
public IconicAdapter() {
super(MainActivity.this,R.layout.row,values);
// TODO Auto-generated constructor stub
}
public View getView(int position,View convertView, ViewGroup parent)
{
View row = convertView;
if(row == null)
{
LayoutInflater inflater = getLayoutInflater();
row = inflater.inflate(R.layout.row, parent,false);
}
TextView label =(TextView)row.findViewById(R.id.label);
label.setText(values[position]);
ImageView icon = (ImageView)row.findViewById(R.id.icon);
icon.setImageResource(R.drawable.ok);
return (row);
}
}
なにか提案を?