热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SwipeRefreshLayout实现下拉刷新上滑加载

importandroid.support.v4.widget.SwipeRefreshLayout;importandroid.support.v7.app.AppCompatAc

import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
public class MainActivity extends Activity implements SwipeRefreshLayout.OnRefreshListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 模拟一些数据
final List String datas = new ArrayList String
for (int i = 0; i i++) {
datas.add("item - " + i);
// 构造适配器
final BaseAdapter adapter = new ArrayAdapter String (this,
android.R.layout.simple_list_item_1,
datas);
// 获取listview实例
ListView listView = (ListView) findViewById(R.id.listview);
listView.setAdapter(adapter);
// 获取RefreshLayout实例
final RefreshLayout myRefreshListView = (RefreshLayout)
findViewById(R.id.swipe_layout);
// 设置下拉刷新时的颜色值,颜色值需要定义在xml中
// myRefreshListView
// .setColorScheme(R.color.umeng_comm_text_topic_light_color,
// R.color.umeng_comm_yellow, R.color.umeng_comm_green,
// R.color.umeng_comm_linked_text);
// 设置下拉刷新监听器
myRefreshListView.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
Toast.makeText(MainActivity.this, "refresh", Toast.LENGTH_SHORT).show();
myRefreshListView.postDelayed(new Runnable() {
@Override
public void run() {
// 更新数据
datas.add(0,"-1下拉刷新");
adapter.notifyDataSetChanged();
// 更新完后调用该方法结束刷新
myRefreshListView.setRefreshing(false);
}
}, 1000);
}
// 加载监听器
myRefreshListView.setOnLoadListener(new RefreshLayout.OnLoadListener() {
@Override
public void onLoad() {
Toast.makeText(MainActivity.this, "load", Toast.LENGTH_SHORT).show();
myRefreshListView.postDelayed(new Runnable() {
@Override
public void run() {
datas.add("上拉加载 ");
adapter.notifyDataSetChanged();
// 上拉加载完后调用该方法
myRefreshListView.setLoading(false);
}
}, 1500);
}
});
@Override
public void onRefresh() {
}
}




   



推荐阅读
author-avatar
Remember_Mi
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有