Android 当滚动回顶部时,图像从recyclerview中消失,有些图像未显示
我有一个recyclerview来显示图像,问题是当我向后滚动到顶部时,一些图像消失了。有时它也会加载缺少的一些图像 卡适配器:Android 当滚动回顶部时,图像从recyclerview中消失,有些图像未显示,android,android-studio,android-recyclerview,Android,Android Studio,Android Recyclerview,我有一个recyclerview来显示图像,问题是当我向后滚动到顶部时,一些图像消失了。有时它也会加载缺少的一些图像 卡适配器: public class CardAdapter extends RecyclerView.Adapter<CardAdapter.ViewHolder> { //Imageloader to load image private ImageLoader imageLoader; private final Context con
public class CardAdapter extends RecyclerView.Adapter<CardAdapter.ViewHolder> {
//Imageloader to load image
private ImageLoader imageLoader;
private final Context context;
//List to store all posts
List<Posts> Posts;
//Constructor of this class
public CardAdapter(List<Posts> Post, Context context){
super();
//Getting all
this.Posts = Post;
this.context = context;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext())
.inflate(R.layout.posts_list, parent, false);
ViewHolder viewHolder = new ViewHolder(v);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
//Getting the particular item from the list
Posts post = Posts.get(position);
//Loading image from url
imageLoader = CustomVolleyRequest.getInstance(context).getImageLoader();
//Showing data on the views
holder.imageView.setImageUrl(post.getImageUrl(), imageLoader);
holder.textViewName.setText(post.getName());
holder.textViewPublisher.setText(post.getPublisher());
}
@Override
public int getItemCount() {
return Posts.size();
}
class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
//Views
public NetworkImageView imageView;
public TextView textViewName;
public TextView textViewPublisher;
//Initializing Views
public ViewHolder(View itemView) {
super(itemView);
imageView = (NetworkImageView) itemView.findViewById(R.id.imageViewHero);
textViewName = (TextView) itemView.findViewById(R.id.textViewName);
textViewPublisher = (TextView) itemView.findViewById(R.id.textViewPublisher);
textViewName.setClickable(true);
textViewName.setOnClickListener(this);
}
@Override
public void onClick(View v) {
final Intent intent;
intent = new Intent(context, Profile.class);
intent.putExtra("user", textViewName.getText().toString());
context.startActivity(intent);
}
}
}
公共类CardAdapter扩展了RecyclerView.Adapter{
//Imageloader以加载图像
私有图像加载器;
私人最终语境;
//用于存储所有帖子的列表
列出员额;
//这个类的构造函数
公共卡适配器(列表帖子、上下文){
超级();
//获得全部
这个.Posts=Post;
this.context=上下文;
}
@凌驾
public ViewHolder onCreateViewHolder(视图组父级,int-viewType){
视图v=LayoutInflater.from(parent.getContext())
.充气(R.layout.posts\u列表,父级,假);
视窗夹持器视窗夹持器=新视窗夹持器(v);
返回视图持有者;
}
@凌驾
公共无效onBindViewHolder(ViewHolder,int位置){
//从列表中获取特定项
Posts post=Posts.get(位置);
//从url加载图像
imageLoader=CustomVolleyRequest.getInstance(上下文).getImageLoader();
//显示视图上的数据
holder.imageView.setImageUrl(post.getImageUrl(),imageLoader);
holder.textViewName.setText(post.getName());
holder.textViewPublisher.setText(post.getPublisher());
}
@凌驾
public int getItemCount(){
返回后。大小();
}
类ViewHolder扩展了RecyclerView.ViewHolder实现了View.OnClickListener{
//观点
公共网络图像视图;
公共文本视图文本视图名称;
公共文本视图文本视图发布者;
//初始化视图
公共视图持有者(视图项视图){
超级(项目视图);
imageView=(NetworkImageView)itemView.findViewById(R.id.imageViewHero);
textViewName=(TextView)itemView.findViewById(R.id.textViewName);
textViewPublisher=(TextView)itemView.findViewById(R.id.textViewPublisher);
textViewName.setClickable(真);
textViewName.setOnClickListener(此);
}
@凌驾
公共void onClick(视图v){
最终意图;
意图=新意图(上下文,Profile.class);
intent.putExtra(“用户”,textViewName.getText().toString());
背景。开始触觉(意图);
}
}
}
为什么我的图像从recyclerview中消失?我该怎么办?尝试使用一些虚拟图像,只使用
ImageView
而不是NetworkImageView
-在这种情况下,您将指定问题是否与NetworkImageView
有关感谢您的回答,要使此工作正常,我是否只需将NetworkImageView
更改为ImageView
?因为它向我显示了一个错误:找不到符号方法setImageUrl@DiversNo。正如我说的,你应该在ImageView
上设置虚拟图像。与其创建相同的问题,不如按照我的建议去做。对不起,我是android studio的新手。我是一名PHP开发人员,在这里学习。所以我不明白在ImageView上设置虚拟图像的方法是什么,这是关于我的xml的吗?你能解释一下我该怎么做吗?我应该更改什么文件@潜水员