Android SwipeRefreshLayout下拉刷新源码解析_Android

本文实例为大家分享了SwipeRefreshLayout下拉刷新源码,供大家参考,具体内容如下

1.SwipeRefreshLayout是Google在support v4 19.1版本的library更新的一个下拉刷新组件,实现刷新效果更方便。

弊端:只有下拉

//设置刷新控件圈圈的颜色
swipe_refresh_layout.setColorSchemeResources(android.R.color.holo_blue_light, android.R.color.holo_orange_light, android.R.color.holo_red_light, android.R.color.holo_green_light);
//设置刷新控件背景色
swipe_refresh_layout.setProgressBackgroundColorSchemeColor(getResources().getColor(android.R.color.white));
//设置滑动距离
swipe_refresh_layout.setDistanceToTriggerSync(100);
//设置大小模式
swipe_refresh_layout.setSize(SwipeRefreshLayout.DEFAULT);
//设置下拉刷新控件状态隐藏
swipe_refresh_layout.setRefreshing(false);  

2.在xml文件中引用android.support.v4.widget.SwipeRefreshLayout控件,在里面可以放置任何一个控件,例如ListView,gridview等。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent" > 

 <android.support.v4.widget.SwipeRefreshLayout
  android:id="@+id/id_swipe_ly"
  android:layout_width="match_parent"
  android:layout_height="match_parent" > 

  <ListView
   android:id="@+id/id_listview"
   android:layout_width="match_parent"
   android:layout_height="match_parent" >
  </ListView>
 </android.support.v4.widget.SwipeRefreshLayout> 

</RelativeLayout> 

3.Java代码

public class MainActivity extends Activity implements SwipeRefreshLayout.OnRefreshListener {

 private SwipeRefreshLayout swipeLayout;
 private ListView listView;
 private ListViewAdapter adapter;
 private List<ItemInfo> infoList;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);

  swipeLayout = (SwipeRefreshLayout) this.findViewById(R.id.swipe_refresh);
  swipeLayout.setOnRefreshListener(this);

  // 顶部刷新的样式
  swipeLayout.setColorScheme(android.R.color.holo_red_light, android.R.color.holo_green_light,
    android.R.color.holo_blue_bright, android.R.color.holo_orange_light);

  infoList = new ArrayList<ItemInfo>();
  ItemInfo info = new ItemInfo();
  info.setName("coin");
  infoList.add(info);
  listView = (ListView) this.findViewById(R.id.listview);
  adapter = new ListViewAdapter(this, infoList);
  listView.setAdapter(adapter);
 }

 public void onRefresh() {
  new Handler().postDelayed(new Runnable() {
   public void run() {
    swipeLayout.setRefreshing(false);
    ItemInfo info = new ItemInfo();
    info.setName("coin-refresh");
    infoList.add(info);
    adapter.notifyDataSetChanged();
   }
  }, 500);
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, swiperefreshlayout
下拉刷新
swiperefreshlayout、swiperefreshlayout包、swiperefreshlayout类、xswiperefreshlayout、swiperefresh下拉冲突,以便于您获取更多的相关知识。

时间: 2024-09-15 17:16:23

Android SwipeRefreshLayout下拉刷新源码解析_Android的相关文章

Android SwipeRefreshLayout下拉刷新源码解析

本文实例为大家分享了SwipeRefreshLayout下拉刷新源码,供大家参考,具体内容如下 1.SwipeRefreshLayout是Google在support v4 19.1版本的library更新的一个下拉刷新组件,实现刷新效果更方便. 弊端:只有下拉 //设置刷新控件圈圈的颜色 swipe_refresh_layout.setColorSchemeResources(android.R.color.holo_blue_light, android.R.color.holo_orang

Android SwipereFreshLayout下拉刷新

Android SwipereFreshLayout下拉刷新 我们都知道现在android5.0以后就提倡使用Material Design设计了.在Material Design设计就有一个非常好的设计SwipereFreshLayout,下面我们就来看看它的使用.既然它来源于Material Design,我们第一步就应该是添加它的库. 1.我们就在build.gradle添加库: compile 'com.android.support:support-v4:22.1.1' 2.然后我们就

Android SwipeRefreshLayout下拉刷新组件示例

SwipeRefreshLayout概述 SwipeRefrshLayout是Google官方更新的一个Widget,可以实现下拉刷新的效果.该控件集成自ViewGroup在support-v4兼容包下,不过我们需要升级supportlibrary的版本到19.1以上. 用户通过手势或者点击某个按钮实现内容视图的刷新,布局里加入SwipeRefreshLayout嵌套一个子视图如ListView. RecyclerView等,触发刷新会通过OnRefreshListener的onRefresh方

Android SwipeRefreshLayout 下拉刷新控件介绍

下面App基本都有下拉刷新的功能,以前基本都使用XListView或者自己写一个下拉刷新,近期Google提供了一个官方的下拉刷新控件 SwipeRefreshLayout,我感觉还不错啊,见惯了传统的下拉刷新,这个反而给人耳目一新的感觉(貌似知乎的APP已经使用这种下拉刷新了). Google也在官方网站给出了V4的兼容包: 再来看看布局文件里的代码(我这里放的是一个ListView 当然也可以放其他控件 只要你高兴就好)  <android.support.v4.widget.SwipeRe

Android自定义下拉刷新控件RefreshableView_Android

这是在了解下拉刷新功能原理下的产物,下拉刷新可以说是国产APP里面必有的功能,连Google都为此出了SwipeRefreshLayout,一种MD风格的下拉刷新. 不过,MD风格在国内似乎很是艰难,不单单是国内系统主流仍是4.4的原因,也有用户习惯的问题,扯的有点多了,在看了许多博客之后,我突然想写一个能仿照 SwipeRefreshLayout 的兼容所有控件的下拉刷新,不单单只是 ListView,希望它也可以包容普通的View和ScrollView,经过两天的奋斗,终于搞定了,因为我的目

android自定义下拉刷新的头部

问题描述 android自定义下拉刷新的头部 用PullToRefresh的时候,自带的是一个"下拉刷新"提示,我想改一下这个文字,怎么弄啊 还有那个图标 解决方案 已解决 ILoadingLayout startLabels= listview.getLoadingLayoutProxy(); // startLabels.setPullLabel("下拉刷新...");// 刚下拉时,显示的提示 // startLabels.setRefreshingLabel

Android ListView下拉刷新上拉自动加载更多DEMO示例_Android

代码下载地址已经更新.因为代码很久没更新,已经很落伍了,建议大家使用RecyclerView实现. 参考项目: https://github.com/bingoogolapple/BGARefreshLayout-Android https://github.com/baoyongzhang/android-PullRefreshLayout 下拉刷新,Android中非常普遍的功能.为了方便便重写的ListView来实现下拉刷新,同时添加了上拉自动加载更多的功能.设计最初是参考开源中国的And

Android ListView下拉刷新上拉自动加载更多DEMO示例

代码下载地址已经更新.因为代码很久没更新,已经很落伍了,建议大家使用RecyclerView实现. 参考项目: https://github.com/bingoogolapple/BGARefreshLayout-Android https://github.com/baoyongzhang/android-PullRefreshLayout 下拉刷新,Android中非常普遍的功能.为了方便便重写的ListView来实现下拉刷新,同时添加了上拉自动加载更多的功能.设计最初是参考开源中国的And

Android自定义下拉刷新上拉加载_Android

本文实例为大家分享了Android自定义下拉刷新上拉加载的具体实现步骤,供大家参考,具体内容如下 实现的方式是SwipeRefreshLayout + RecyclerView 的VIewType 首先看效果: 总的思路: 布局文件 <android.support.v4.widget.SwipeRefreshLayout android:layout_marginTop="?attr/actionBarSize" android:id="@+id/one_refres