Android 将位图设置为ImageView时,我的ListView不平滑
我将适配器与Android 将位图设置为ImageView时,我的ListView不平滑,android,Android,我将适配器与ListView一起使用,这是getView @Override public View getView(int position, View convertView, ViewGroup parent){ ItemViewHolder viewHolder; if(convertView == null){ convertView = (RelativeLayout)inflater.inflate(resource,parent, false);
ListView
一起使用,这是getView
@Override
public View getView(int position, View convertView, ViewGroup parent){
ItemViewHolder viewHolder;
if(convertView == null){
convertView = (RelativeLayout)inflater.inflate(resource,parent, false);
viewHolder = new ItemViewHolder();
viewHolder.itemTextName = (TextView)convertView.findViewById(R.id.item_name);
viewHolder.itemTextExpDate = (TextView)convertView.findViewById(R.id.item_exp_date);
viewHolder.itemImage = (ImageView)convertView.findViewById(R.id.item_image);
}
else{
viewHolder = (ItemViewHolder)convertView.getTag();
}
Item item = listItem.get(position);
if(listItem != null){
viewHolder.itemTextName.setText(item.getName());
viewHolder.itemTextExpDate.setText(""+item.getDaysleft());
viewHolder.itemImage.setImageBitmap(item.getImage());
}
return convertView;
}
static class ItemViewHolder {
View baseView;
TextView itemTextName;
TextView itemTextExpDate;
ImageView itemImage;
}
当我将Bitmap
设置为ImageView
时,ListView
不平滑
我是否在
getView
中实现了正确的代码 看看这段简单的代码如何使用simple,您只需将它外部化即可
在开始时使用Integer.toString或其他非整数
viewHolder.itemTextExpDate.setText(""+item.getDaysleft());
使用setImage时。。。getView将被多次调用
为什么要检查它是否为空,并且比使用它快1行?没道理
if(listItem != null){
viewHolder.itemTextName.setText(item.getName());
viewHolder.itemTextExpDate.setText(""+item.getDaysleft());
viewHolder.itemImage.setImageBitmap(item.getImage());
}
最重要的是你没有设置holder这个代码不会崩溃
看看主题:
尝试在if块中添加:
convertView.setTag(viewHolder)
。另外,使用类似的方法在列表视图中加载图像