实现思路:
1、获取id
2、获取数据new list
3、实例化适配器ArrayAdapter
4、给id设置下拉刷新的监听
5、写一个类部类,添加新的数据
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <com.handmark.pulltorefresh.library.PullToRefreshListView
android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/ptrlv_Refresh" ></com.handmark.pulltorefresh.library.PullToRefreshListView></LinearLayout>
public class PullToRefreshActivity extends AppCompatActivity{
private PullToRefreshListView ptrlv_refresh;
private List<String> list;
private ArrayAdapter adapter;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ativity_pulltorefresh);
ptrlv_refresh = (PullToRefreshListView) findViewById(R.id.ptrlv_Refresh);
list = new ArrayList<>();
//1、获取数据
for (int i = 0; i < 10; i++) {
list.add("白狼爱蒋心"+i);
}
//2、适配器
adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,list);
ptrlv_refresh.setAdapter(adapter);
//3.给ListView设置下拉刷新的监听
ptrlv_refresh.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
@Override
public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
new MyTask().execute();
}
@Override
public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
}
});
}
class MyTask extends AsyncTask{
//在后台 获取数据
//内部有线程机制
@Override
protected Object doInBackground(Object[] objects) {
for (int i = 0; i < 3; i++) {
list.add(0,"蒋心也很爱白狼"+i);
}
return null;
}
//更新数据
@Override
protected void onPostExecute(Object o) {
super.onPostExecute(o);
ptrlv_refresh.onRefreshComplete();
//通知适配器数据,发生改变
adapter.notifyDataSetChanged();
}
}
}