RecyclerView"跳跃"向上滚动时的上一项

时间:2016-01-29 15:46:55

标签: android scroll android-recyclerview picasso

我的RecyclerView有问题。 我使用带有DocumentView的支架(来自库bluejamesbond / TextJustify-Android)和使用Picasso加载图像的ImageView。

问题是,当我向下滚动页面,然后我尝试向上滚动时,Recycler"跳跃"到中间的上一个项目(当我继续向上滚动时,它会跳转到上一个项目等)。

任何人都知道为什么会这样?也许是因为使用Picasso或TextJustify库? 这是我的自定义视图持有者和onBindViewHolder& onCreateViewHolder方法:

class ContentViewHolder extends RecyclerView.ViewHolder {      
    DocumentView text;
    ImageView img;

    public ContentViewHolder(View itemView) {
        super(itemView);
        img = (ImageView) itemView.findViewById(R.id.item_content_image);
        text = (DocumentView) itemView.findViewById(R.id.item_content_text);
    }
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_content, parent, false);
    return new ContentViewHolder(v);
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int i) {
    ContentViewHolder contentViewHolder = (ContentViewHolder) holder;
    contentViewHolder.text.setCacheConfig(DocumentView.CacheConfig.NO_CACHE);
    contentViewHolder.text.getDocumentLayoutParams().setAntialias(true);
    contentViewHolder.text.getDocumentLayoutParams().setLineHeightMultiplier(1.3f);
    contentViewHolder.text.getDocumentLayoutParams().setTextColor(Color.DKGRAY);
    ContentImage image = items.get(i).getImagen();
    contentViewHolder.text.setText(items.get(i).getText());
    Picasso.with(fragment.getActivity()).load(Util.getIdResourceImage(image.getImageId())).resize(200, 200).centerInside().into(contentViewHolder.img);    
}

这是我充气的回收者视图项目

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_content_child"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="21dp"
    android:orientation="horizontal"
    android:paddingLeft="55dp"
    android:paddingRight="55dp">

<ImageView
    android:id="@+id/item_content_image"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true" />

<com.bluejamesbond.text.DocumentView xmlns:ext="http://schemas.android.com/apk/res-auto"
    android:id="@+id/item_content_text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerVertical="true"
    android:layout_toLeftOf="@id/item_content_image"
    ext:documentView_textAlignment="justified"
    ext:documentView_textFormat="plain"
    ext:documentView_textSize="19sp" />
</RelativeLayout>

提前致谢

0 个答案:

没有答案