Android——谷歌官方下拉刷新控件SwipeRefreshLayout
来源:互联网 发布:网络信息安全解决方案 编辑:程序博客网 时间:2024/06/06 09:53
前言:
如今谷歌推出了更官方的下拉刷新控件, 这无疑是对安卓开发人员来说是个好消息,很方便的使用这个SwipeRefreshLayout控件实现下拉刷新功能。Android4.0以下的版本需要用到Android-support-v4.jar包才能用到
android-support-v4.jar 包下载地址:http://download.csdn.net/detail/h7870181/7784247
注:记得一定要把Support library的版本升级到19.1或最新
谷歌SwipeRefreshLayout官方API
那下面就来做一个简单的DEMO,来看看SwipeRefreshLayout这个控件到底如何
注:楼主使用的是Android Studio 作为IDE。
1,首先来看看SwipeRefreshLayout的布局文件
<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swiperereshlayout" android:layout_marginTop="55dp" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="match_parent"></ListView></android.support.v4.widget.SwipeRefreshLayout>
2,在Activity中是如何使用SwipeRefreshLayout的
public class MainActivity extends AppCompatActivity { private SwipeRefreshLayout swiperereshlayout ; private ListView listview ; private ArrayAdapter<String> adapter; private List<String> data; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); initView(); } private void initView (){ swiperereshlayout = (SwipeRefreshLayout) findViewById(R.id.swiperereshlayout); listview = (ListView) findViewById(R.id.listview); data = new ArrayList<String>(); for (int i = 0; i < 20; i++) { data.add("当前的item为 " + i); } adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, data); listview.setAdapter(adapter); swiperereshlayout.setColorSchemeResources(android.R.color.holo_blue_bright, android.R.color.holo_green_light, android.R.color.holo_orange_light); //给swipeRefreshLayout绑定刷新监听 swiperereshlayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { //设置2秒的时间来执行以下事件 new Handler().postDelayed(new Runnable() { public void run() { data.add(0, "刷新后新增的item"); adapter.notifyDataSetChanged(); swiperereshlayout.setRefreshing(false); } }, 2000); } }); }}
注:主要代码就是在initView这个方法里面,里面简单的实现的如何下拉加载新数据,只是做了一个简单的演示 ,具体深入的开发,大家也可以尝试一下自定义。
主要方法
(1)setOnRefreshListener(OnRefreshListener): 为布局添加一个Listener
(2)setRefreshing(boolean): 显示或隐藏刷新进度条
(3)isRefreshing(): 检查是否处于刷新状态
(4)setColorSchemeResources(): 设置进度条的颜色主题,最多能设置四种
目前 swiperereshlayout.setColorScheme()->已弃用
可以使用swiperereshlayout.setColorSchemeResources()来设置颜色。
总结:
谷歌官方目前正在不断完善自己的SDK,推出越来越多的组件,其目的是让开发更简单,设计上更统一,这可能是Google未来的方向,不管怎样,这对开发者来说无疑是非常好的消息。
源码下载
- Android——谷歌官方下拉刷新控件SwipeRefreshLayout
- Android——谷歌官方下拉刷新控件SwipeRefreshLayout
- Android——谷歌官方下拉刷新控件SwipeRefreshLayout
- Android 谷歌官方下拉刷新控件SwipeRefreshLayout
- Android官方下拉刷新控件 SwipeRefreshLayout
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android--SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Android官方下拉刷新控件 SwipeRefreshLayout
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
- Git查看、删除、重命名远端分支和tag
- jQuery删除数组中重复元素
- 数据结构 树及树的存储结构
- Laravel Middleware 中间件
- Ueditor那点事
- Android——谷歌官方下拉刷新控件SwipeRefreshLayout
- 在线用户和访问记录管理项目(代码部分)
- 计算机图形学-实验3-掌握利用OpenGL函数进行鼠标、键盘操作,创建菜单
- Eclipse启动tomcat报错java.lang.OutOfMemoryError: PermGen space
- PCB设计中的3W规则
- 6.learningAction(行为库)
- fiddler使用全集
- 视觉里程计(VisualOdometry)原理及实现
- Linux命令行与shell脚本(1)--常见目录名称