相关疑难解决方法(0)

滚动后,RecyclerView和Picasso图像消失

我没有找到答案在这里,这里这里.

我有一个活动显示帖子列表(有或没有图像).当我向下滚动并向上滚动或刷新列表时,SwipeRefreshLayout某些图像可能会消失.我RecyclerView用来显示帖子列表和Picasso加载图像.这是我的适配器绑定:

@Override
public void onBindViewHolder(ItemViewHolder holder, int position) {
    // <...>
    if (item.getPhoto() != null) {
        Picasso.with(context)
                .load(item.getPhoto())
                .into(holder.mPostPhoto);
    } else {
        holder.mPostPhoto.setImageDrawable(null);
        holder.mPostPhoto.setVisibility(View.GONE);
    }
}
Run Code Online (Sandbox Code Playgroud)

我发送HTTP请求以获取帖子,当我有新数据时,我调用PostsAdapter:

public void addAll(List<PostResponse> items) {
    this.items.clear();
    this.items.addAll(items);

    notifyDataSetChanged();
}
Run Code Online (Sandbox Code Playgroud)

在MainActivity中:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    // <...>
    mPostAdapter = new PostAdapter();
    mPosts.setLayoutManager(new LinearLayoutManager(MainActivity.this));
    mPosts.setAdapter(mPostAdapter);

    mPostsSwipeRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
        @Override
        public void onRefresh() {
            updatePosts();
        }
    }); …
Run Code Online (Sandbox Code Playgroud)

android imageview android-imageview picasso android-recyclerview

2
推荐指数
2
解决办法
3195
查看次数