您的位置:首页 > 编程语言 > Go语言

使用Google 官方的控件SwipeRefreshLayout实现下拉刷新功能

2014-11-20 15:00 603 查看
  之前做东西的时候,经常会用到下拉刷新的功能,之前大家都在使用Github上的一个很著名的开源项目 PullToRefresh

  

  但是,现在好消息来了,google在19.1版本的support-v4兼容包下面正式提供了官方的下拉刷新组件——SwipeRefreshLayout

  注意,你要使用这个组件必须要把你的支持库升级到19.1版本以上

  我们只需要在需要进行刷新的控件外面加上 SwipeRefreshLayout 就可以了 ,但是 ,这个控件的child必须是可滑动的View,比如说ScrollerView或者ListView等

  不多说,直接上代码,布局文件

  

public class MainActivity extends Activity implements OnRefreshListener {

public ListView listView;
public SwipeRefreshLayout refreshLayout;
private String[] mListStr = { "姓名:菜菜", "性别:男", "年龄:20", "居住地:大连",
"邮箱:cwr941012@gmail.com" };
private String[] mListStr_ = { "姓名:翠翠", "性别:男", "年龄:23", "居住地:北京",
"邮箱:cwr941012@gmail.com" };
//定义两个不同的数据源
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.list);
listView.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, mListStr));
refreshLayout = (SwipeRefreshLayout) findViewById(R.id.refresh_layout);
refreshLayout.setOnRefreshListener(this);
//设置一个监听器
refreshLayout.setColorSchemeColors(android.R.color.holo_orange_light,
android.R.color.holo_purple, android.R.color.holo_blue_dark,
android.R.color.holo_red_light);
//设置刷新条的颜色

}

@Override
public void onRefresh() {
// TODO Auto-generated method stub
new Handler().postDelayed(new Runnable() {
public void run() {
listView.setAdapter(new ArrayAdapter<String>(MainActivity.this,
android.R.layout.simple_list_item_1, mListStr_));
refreshLayout.setRefreshing(false);
}
}, 5000);

}
}


MainActivity.java

  在这里面,重写了 onRefresh() 函数进行刷新之中的操作

  基本上就是这样了,希望google能尽快把下拉加载更多的功能也添加进去就更加完美了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐