gpt4 book ai didi

android - ListView的自定义适配器

转载 作者:行者123 更新时间:2023-11-29 21:21:55 26 4
gpt4 key购买 nike

我的 ListView 有多个项目。每个 Item 都有一个 TextView 和两个 ImageView。我已经通过使用自定义适配器实现了这一点。我的 ListView 中的每个 ImageView 都有 5 张图片。如何在自定义适配器的 ImageView 中重复显示 5 张图像?我想以 15 秒的间隔重复所有 ImageView 中的图像。

public class CategoryAdapter extends BaseAdapter {
public Activity adapterActivity;
LayoutInflater adapterInflater;
ImageLoader compImageLoader;
List<Categary> list;

ArrayList<String> category = new ArrayList<String>();
ArrayList<String> leftImage = new ArrayList<String>();
ArrayList<String> rightImage = new ArrayList<String>();

public CategoryAdapter(Activity activity, List<Categary> listData) {
list = listData;
adapterActivity = activity;
adapterInflater = (LayoutInflater) adapterActivity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
compImageLoader = new ImageLoader(
adapterActivity.getApplicationContext());
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}

@Override
public Object getItem(int position) {
return position;
}

@Override
public long getItemId(int position) {
return position;
}

public class ViewHolder {
public ImageView lPic, rPic;
public TextView category;
}

@Override
public View getView(final int position, View convertView, ViewGroup parent) {

View vi = convertView;
final ViewHolder holder;
if (vi == null) {

vi = adapterInflater.inflate(R.layout.categoryadapter, null);
holder = new ViewHolder();
holder.lPic = (ImageView) vi.findViewById(R.id.imageView1);
holder.rPic = (ImageView) vi.findViewById(R.id.imageView2);
holder.category = (TextView) vi
.findViewById(R.id.textView_category);
vi.setTag(holder);
} else {
holder = (ViewHolder) vi.getTag();
}
final Categary assingValue = list.get(position);
holder.lPic.setTag(assingValue.leftPicture);
holder.rPic.setTag(assingValue.rightPicture);
holder.category.setText(assingValue.id);
compImageLoader.DisplayImage(assingValue.leftPicture, holder.lPic);
compImageLoader.DisplayImage(assingValue.rightPicture, holder.rPic);
return vi;
}
}

最佳答案

AnimationDrawable是正确的组件:

在您的 getView() 中,我假设您有一个名为 imageViewImageView。我还假设您有一个代表图像的 Drawables 数组:

AnimationDrawable animation = new AnimationDrawable();
for (Drawable image : images) {
animation.addFrame(image, 15 * 1000L);
}
imageView.setImageDrawable(animation);
animation.start();

这可能会根据您的图像在您的应用程序中的可用方式而改变。

关于android - ListView的自定义适配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com