Nea*_*hal 3 android android-layout android-activity android-recyclerview
我有一个水平的recyclerview(使用LinearLayoutManager),它的子项目有一个包含在relativelayout中的imageview.recyclerview有三个包含子项的水平行.当滚动recyclelerview时,我正在使用http调用的响应更新数据集,并在http响应回调中调用notifydatasetChanged.如果recyclerview子项的高度和宽度是固定值(例如150dp,84dp),则recyclerview的行为与预期相同,即加载新项并保持在相同的滚动位置,但如果我将recyclerview的子项的高度和宽度设置为match_parent, wrap_content,recyclerview完全刷新并滚动到第一个位置.为什么会这样?注意:我在SO上检查了其他类似的问题,但没有一个提供可行的解决方案.
main_layout
<android.support.v7.widget.RecyclerView
android:id="@+id/grid_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="110dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="80dp"
android:background="@color/transparent"
android:outlineProvider="bounds"
android:elevation="8dp"
android:padding="0dp"
android:scrollbars="none" />
....
Run Code Online (Sandbox Code Playgroud)
recycler_view_child_item
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="0dp">
<ImageView
android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:maxWidth="126dp"
android:maxHeight="225dp"
android:padding="0dp"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我遇到了同样的问题,无法在SO上找到解决方案.这个问题是由于没有设置造成LayoutManager的RecyclerView.我知道你说你有LinearLayoutManager.但请确保按以下方式设置它.(就我而言,我正在使用HorizontalGridView,但同样的原则适用RecyclerView).
horizontalGridView = (HorizontalGridView) findViewById(R.id.gridView);
GridElementAdapter adapter = newGridElementAdapter(VenueProfileActivity.this, mDeals);
horizontalGridView.setAdapter(adapter);
HorizontalGridView.LayoutManager layoutManager = new LinearLayoutManager(VenueProfileActivity.this, LinearLayoutManager.HORIZONTAL, false);
horizontalGridView.setLayoutManager(layoutManager);
horizontalGridView.setHasFixedSize(true);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6786 次 |
| 最近记录: |