android 使用刷新控件,Android PullToRefresh下拉刷新控件的简单使用

PullToRefresh这个开源库早就听说了,不过一直没用过。作为一个经典的的开源库,我觉得还是有必要认识一下。

网页一打开就看到一个大大的提醒(说是该项目已经不再维护了):

2c429ea3d8af0d314fb684e2e515111b.png

不管怎样先下载下来再说:

0078f31f0dad2c2d00fd4c6f27ebd406.png

下载解压后,打开文件夹如下图所示:

a7c184cf84408859c2ab3c8977f9a7f4.png

然后导入到工程,如下图所示:(其中的PullToRefreshListFragment和PullToRefreshViewPager在文件夹“extras”中)

89fbf626aba70df5d21033d8664887f3.png

如果在导入后PullToRefreshListFragment和PullToRefreshViewPager报错,可能是因为需要重新导入library包。如下图:

07691d869a895477ca80234c3abf31fa.png

当导入的这三个工程没有任何错误后,新建一个Android工程来使用这个开源库。

新建的工程取名为“zhj_PullToRefresh”。

接着向工程中导入之前添加的三个包PullToRefreshListFragment,PullToRefreshViewPager,library。

倒入包后控制台可能会出现如下的错误:

9307ce4697009dc7af802a8499b15d39.png

这是因为新建的工程中的support-v4包与PullToRefreshListFragment,PullToRefreshViewPager中的support-v4包的版本不同导致的。

解决这个问题只需将“zhj_PullToRefresh”中的support-v4包复制到PullToRefreshListFragment,PullToRefreshViewPager中,并替换其原有的support-v4包,即可。

下面在新建的工程中开始敲代码了:

首先是布局文件main.xml:

然后是MainActivity(代码也很少,比较简单):

public class MainActivity extendsActivity {

PullToRefreshListView lv;private ArrayAdapteradapter;

@Overrideprotected voidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);

setContentView(R.layout.main);

lv=(PullToRefreshListView) findViewById(R.id.pull_listview);//获取该控件

List list=new ArrayList();

list.add("四川托普");

list.add("上海托普");//简易的设置适配器

adapter=new ArrayAdapter(this, android.R.layout.simple_list_item_1,list);

lv.setAdapter(adapter);//对刷新控件实现监听,如果不监听就无法出现“下拉刷新”的字样

lv.setOnRefreshListener(new OnRefreshListener() {

@Overridepublic void onRefresh(PullToRefreshBaserefreshView) {//这里用异步任务来模拟从网络上获取数据

new AsyncTask() {

@OverrideprotectedVoid doInBackground(Void... arg0) {try{

Thread.sleep(3000);//线程休眠

} catch(InterruptedException e) {//TODO Auto-generated catch block

e.printStackTrace();

}return null;

}protected voidonPostExecute(Void result) {//添加新的数据

adapter.addAll("新添加的数据","新添加的数据");

lv.onRefreshComplete();

};

}.execute();

}

});

}

}

运行效果如下:

853e6e2c50f2c39bbc8109584f8433cd.gif

这个确实比较简单就不附上Demo了。

原文:http://www.cnblogs.com/scetopcsa/p/4051722.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值