I have this error reported from an user in adapter. I can't reproduce this:
java.lang.ArrayIndexOutOfBoundsException: length=8; index=8
at this line
if (columnas.get(column).getENTR() == 3)
but I don't understand, because I checked if (columnas.size() > column)
before. How can I fix this error? Sample code is below.
private List<bdcolums> columnas = new ArrayList<bdcolums>();
private View getHeader(final int row, final int column, View convertView, final ViewGroup parent) {
final ViewHolder holder;
if (convertView == null || convertView != inflater.inflate(R.layout.item_table_header, parent, false)) {
convertView = inflater.inflate(R.layout.item_table_header, parent, false);
holder = new ViewHolder();
holder.header_desc = (TextView) convertView.findViewById(R.id.text2);
holder.header_nom = (TextView) convertView.findViewById(android.R.id.text1);
holder.header_img = (ImageView) convertView.findViewById(R.id.dibuheader);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
if (columnas.size() > column) {
if (columnas.get(column).getENTR() == 3) {
//do something
}
} else {
//do something
}
return convertView;
}