android 下拉刷新控件swipeRefreshLayout
1.android获取新数据的时候刷新界面都是基本是上下拉刷新,但刷新效果基本都是千篇一律的,
所以google自己定义了一个下拉刷新控件SwipeRefreshLayout.
2.Api解读:

Api中对SwipeRefreshLayout的解释需要注意几点(图片中已经表示出)
1.要用用SwipeRefreshLayout要实现它的OnRefreshListenter,它是用来监听数据的获取的.
2.要用利用进度条动画的时候就要设置它的setRefreshing,为true的时候就显示进度条动画,为false时候就不显示进度条动画.
3.当不想用刷新功能的时候就直接设置它setEnabled,为false则不可用.
4.有一个注意事项:SwipeRefreshLayout只能有一个子View,所以它通常就包含一个ListView , ScrollView,GridView等
3.代码实现:
功能说明:ListView通过下拉刷新获取更多数据.
有些人的android.support.v4包里没有SwipeRefreshLayout ,直接下载下面的源码,在将包放入自己的工程当中
效果图:

1 public class MyListFragment extends Fragment { 2 3 private SwipeRefreshLayout swipeRefreshLayout; 4 private ListView listView; 5 private ArrayAdapter<String> adapter; 6 private List<String> data; 7 8 @Override 9 public View onCreateView(LayoutInflater inflater, ViewGroup container, 10 Bundle savedInstanceState) { 11 View v = inflater.inflate(R.layout.fragment_pictext, container, false); 12 init(v); 13 return v; 14 } 15 16 private void init(View v) { 17 listView = (ListView) v.findViewById(R.id.listView); 18 data = new ArrayList<String>(); 19 for (int i = 0; i < 50; i++) { 20 data.add("我是测试item:" + i); 21 } 22 adapter = new ArrayAdapter<String>(getActivity(), 23 android.R.layout.simple_list_item_1, data); 24 listView.setAdapter(adapter); 25 26 // findview 27 swipeRefreshLayout = (SwipeRefreshLayout) v 28 .findViewById(R.id.swipeRefreshLayout); 29 // 设置卷内的颜色 30 swipeRefreshLayout.setColorSchemeResources( 31 android.R.color.holo_blue_bright, 32 android.R.color.holo_green_light, 33 android.R.color.holo_orange_light, 34 android.R.color.holo_red_light); 35 // 设置下拉刷新监听 36 swipeRefreshLayout.setOnRefreshListener(new OnRefreshListener() { 37 @Override 38 public void onRefresh() { 39 new Handler().postDelayed(new Runnable() { 40 public void run() { 41 data.add(0, "添加新的item" + new Random().nextInt()); 42 adapter.notifyDataSetChanged(); 43 // 停止刷新动画 44 swipeRefreshLayout.setRefreshing(false); 45 } 46 }, 3000); 47 } 48 }); 49 50 } 51 }
**这段代码是引用别人的,注释很清楚了就不说了,这个API上要用的说的很清楚了
地址:https://github.com/hanks-zyh/SwipeRefreshLayout

浙公网安备 33010602011771号