下拉刷新组件SwipeRefreshLayout的使用
2016-12-06 16:35
141 查看
1.swiperefreshlayout是谷歌自己的下拉刷新组件,使用方法与其他组件一样,将其放在需要下拉刷新功能的最外层即可,如:
在使用时要对其进行设置,其基本的设置有
设置加载圈颜色:setColorSchemeColors(Color.RED, Color.BLUE);其颜色可以设置多个或1个
设置其背景颜色:setBackgroundColor(Color.YELLOW);
设置初始大小:setSize(SwipeRefreshLayout.LARGE);
设置向下拉多少刷新:setDistanceToTriggerSync(100);
设置刷新出现的位置:setProgressViewEndTarget(false, 200);
进行刷新时的监听:
刷新操作完成时调用swipe_refresh.setRefreshing(false);以结束刷新
2.SwipeRefreshLayout与listview冲突
可使用setOnScrollListener判断listview是否滑动到顶部,滑动顶部时设置:
swipe_refresh.setEnabled(true);
为滑动到顶部时:swipe_refresh.setEnabled(false);如:
3.SwipeRefreshLayout与ScrollView冲突
原理与其与listview的解决 方法一样,代码如:
<android.support.v4.widget.SwipeRefreshLayout android:id="@+id/bank_card_swipe_refresh" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.doros.fragment.BankCardFragment"> <ListView android:id="@+id/bank_card_lv" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginBottom="5dp" android:layout_marginLeft="15dp" android:layout_marginRight="15dp" android:layout_marginTop="10dp" android:divider="@null" android:dividerHeight="12dp" android:scrollbars="none"/> </android.support.v4.widget.SwipeRefreshLayout>
在使用时要对其进行设置,其基本的设置有
设置加载圈颜色:setColorSchemeColors(Color.RED, Color.BLUE);其颜色可以设置多个或1个
设置其背景颜色:setBackgroundColor(Color.YELLOW);
设置初始大小:setSize(SwipeRefreshLayout.LARGE);
设置向下拉多少刷新:setDistanceToTriggerSync(100);
设置刷新出现的位置:setProgressViewEndTarget(false, 200);
进行刷新时的监听:
swipe_refresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { //此处处理下拉刷新时要进行的操作 } });
刷新操作完成时调用swipe_refresh.setRefreshing(false);以结束刷新
2.SwipeRefreshLayout与listview冲突
可使用setOnScrollListener判断listview是否滑动到顶部,滑动顶部时设置:
swipe_refresh.setEnabled(true);
为滑动到顶部时:swipe_refresh.setEnabled(false);如:
listView.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScrollStateChanged(AbsListView view, int scrollState) { } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { boolean enable = false; if(firstVisibleItem==0) enable = true; else enable = fase; swipe_refresh.setEnabled(enable);//此处也可使用其他更详细的判断 } });
3.SwipeRefreshLayout与ScrollView冲突
原理与其与listview的解决 方法一样,代码如:
mScrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() { @Override public void onScrollChanged() { swipe_refresh.setEnabled(mScrollView.getScrollY()==0); } });
相关文章推荐
- 【FastDev4Android框架开发】Android 列表下拉刷新组件PullToRefreshListView使用(三)
- Android SwipeRefreshLayout 下拉刷新组件的使用
- Android下拉刷新组件Android PullToRefresh使用方法
- 下拉刷新组件 PullToRefreshListView的使用
- mescroll.js上拉加载下拉刷新组件使用详解
- better-scroll上拉加载 和下拉刷新 的使用(基于vue写成组件的形式)
- 使用组件来完成MUI的下拉刷新
- 【安卓笔记】下拉刷新组件的使用及实现
- (4.2.7)【android开源组件】Android PullToRefresh (ListView GridView 下拉刷新) 使用详解
- 使用FileUpload组件上传文件
- struts中使用tiles组件(原创)
- SmileyTextField 组件使用
- ASP.NET分页组件学与用——使用篇
- 在WebWork中使用组件(转载)
- Sailprint打印组件的基本使用方法。
- 关于win2003企业版中FSO组件不能使用的问题
- Alert 组件使用方法
- 在jsp中使用upload组件
- 在jsp中使用smartupload组件上传文件
- 使用ASP.NET页面创建可视的UI,在客户机上实例化MSXML分析器的页面从中间层组件取出XML数据、操作并显示 并有问题请高手解决