如何解决当我在Firebase中单击viewpager中的图像时,它会在view pager活动中一次又一次地重复图像列表
当我单击从Firebase接收的recyclerView中的图像时,它会出现在下一个活动中,并且列表中的所有其他图像都以正确的位置显示,但是当我返回到recyclerView并单击list Viewpager不会停在列表的最后一个图像上,它会一次又一次地重复图像列表。
如何解决此问题,我已经应用了许多解决方案,但没有得到任何相关的解决方案。 请帮忙。
WallpaperPagerAdapter.java
public class WallaperPagerAdapter extends PagerAdapter {
ArrayList<String> recieveimages;
int imagePos;
Context context;
public WallaperPagerAdapter(Context ctx,ArrayList<String> images,int pos) {
this.recieveimages = images;
this.imagePos = pos;
context = ctx;
}
@Override
public int getCount() {
return recieveimages.size();
}
@Override
public boolean isViewFromObject(@NonNull View view,@NonNull Object object) {
return view==object;
}
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container,int position) {
ImageView imageView = new ImageView(context);
Picasso.get().load(recieveimages.get(position)).fit().placeholder(R.drawable.loading_icon).into(imageView);
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(@NonNull ViewGroup container,int position,@NonNull Object object) {
container.removeView((View) object);
}
}
Wallpaper.Activity
ArrayList<String> getlist;
Intent intent = getIntent();
getlist = intent.getStringArrayListExtra("list");
int pos = intent.getIntExtra("pos",5);
WallaperPagerAdapter pagerAdapter = new WallaperPagerAdapter(this,getlist,pos);
viewPager.setAdapter(pagerAdapter);
viewPager.setCurrentItem(pos);
mgetWallpaperAdapter.java RecyclerAdapter,可显示来自Firebase的图像
@Override
public void onBindViewHolder(@NonNull wallpaperHolder holder,final int position) {
final WallpaperModel list1 = mlists.get(position);
// Log.i("duplicate URLs",String.valueOf(list1.getImageurl()));
Picasso.get().load(list1.getImageurl()).placeholder(R.drawable.loading_icon).into(holder.imageView);
holder.imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for (int i=0;i<mlists.size();i++) {
list.add(mlists.get(i).getImageurl());
}
Intent i=new Intent(context,Wallpaper.class);
i.putStringArrayListExtra("list",(ArrayList<String>) list);
i.putExtra("pos",position);
context.startActivity(i);
}
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。