SwipeRefreshLayout - RecyclerView 未被下拉
SwipeRefreshLayout - the RecyclerView is not pulled down
我有一个 RecyclerView
和 GridLayoutManager
,当使用 SwipeRefreshLayout
时,RecyclerView
没有被拉下。如何制作刷新时toolbar和recyclerview有间隙的效果?
XML:
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipe_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RecyclerView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
</FrameLayout>
代码:
swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.swipe_container);
swipeLayout.setOnRefreshListener(this);
swipeLayout.setColorScheme(android.R.color.holo_blue_bright, android.R.color.holo_green_light, android.R.color.holo_orange_light, android.R.color.holo_red_light);
gridView = (RecyclerView) getActivity().findViewById(R.id.gridView);
gridLayoutManager = new GridLayoutManager(getActivity(), 4, GridLayoutManager.VERTICAL, false);
gridView.setLayoutManager(gridLayoutManager);
gridView.setVisibility(View.GONE);
gridView.setHasFixedSize(false);
gridView.setItemAnimator(new DefaultItemAnimator());
您的代码没问题,但是 swipeRefreshLayout 不会拉下网格视图,而只会拉下它本身,对于演示,请检查此 video. You can however use other libraries like Ulta-Pull-to-Refresh 以达到预期效果!
我有一个 RecyclerView
和 GridLayoutManager
,当使用 SwipeRefreshLayout
时,RecyclerView
没有被拉下。如何制作刷新时toolbar和recyclerview有间隙的效果?
XML:
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipe_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RecyclerView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
</FrameLayout>
代码:
swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.swipe_container);
swipeLayout.setOnRefreshListener(this);
swipeLayout.setColorScheme(android.R.color.holo_blue_bright, android.R.color.holo_green_light, android.R.color.holo_orange_light, android.R.color.holo_red_light);
gridView = (RecyclerView) getActivity().findViewById(R.id.gridView);
gridLayoutManager = new GridLayoutManager(getActivity(), 4, GridLayoutManager.VERTICAL, false);
gridView.setLayoutManager(gridLayoutManager);
gridView.setVisibility(View.GONE);
gridView.setHasFixedSize(false);
gridView.setItemAnimator(new DefaultItemAnimator());
您的代码没问题,但是 swipeRefreshLayout 不会拉下网格视图,而只会拉下它本身,对于演示,请检查此 video. You can however use other libraries like Ulta-Pull-to-Refresh 以达到预期效果!