我有以下BaseAdapter,問題是我看到一個ImageView回收問題,其中圖像在另一個ImageView中顯示只有當滾動速度很快時纔會出現問題,我在這裏做錯了什麼?BaseAdapter回收問題 - Android
讓我引導你瞭解我正在嘗試做什麼的邏輯,我在代碼中有兩組組和用戶,都是ArrayList。
現在這個users.size()+ groups.size()給我的總數,並且在getView中我必須告訴這個視圖是屬於一個組還是用戶。
public class ProfileAdapter extends BaseAdapter {
ArrayList<String> groups = new ArrayList<>();
ArrayList<String> users = new ArrayList<>();
count = users.size() + groups.size();
public int getCount() {
return count;
}
@Override
public View getView(final int position, View convertView, final ViewGroup parent) {
final ViewHolder holder;
if (convertView == null) {
convertView = infalter.inflate(R.layout.grid_item, null);
holder = new ViewHolder();
holder.image = (ImageView) convertView.findViewById(R.id.grid_image);
holder.name = (TextView) convertView.findViewById(R.id.name);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.image.setImageResource(android.R.color.darker_gray);
if (position < groups.size()) {
//I'm in the group section so get me the group name
holder.name.setText(groups.get(position));
TextDrawable drawable = TextDrawable.builder().beginConfig()...;
holder.image.setImageDrawable(drawable);
} else {
//I'm in the user section so get me the user image
//this is where the problem is happening
imageLoader.displayImage("file://" + users.get(position - groups.size()), holder.image);
}
return convertView;
}
class ViewHolder {
ImageView image;
TextView name;
}
}
問題是什麼,你究竟面臨着?你在用戶部分看到textview還是圖像不到位? –
ImageView問題,圖像不到位。 –