zoukankan      html  css  js  c++  java
  • SwipeRefreshLayout下拉刷新

    1.设置动画颜色:swipeRefreshLayout.setColorSchemeColors(colors);//可变长参数

    2.下拉刷新事件监听:swipeRefreshLayout.setRefreshListener(refreshListener);

    3.停止刷新:swipeRefreshLayout.setRefreshing(false);

    4.使用时,SwipeRefreshLayout作为父容器将ListView包裹起来

    <android.support.v4.widget.SwipeRefreshLayout
            android:id="@+id/swipe_refresh_layout"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    
            <ListView
                android:id="@+id/lv"
                android:layout_width="match_parent"
                android:layout_height="match_parent"></ListView>
        </android.support.v4.widget.SwipeRefreshLayout>
    public class MainActivity extends AppCompatActivity {
    
        private List<String> list;
        private SwipeRefreshLayout refreshLayout;
        private Handler mHandler = new Handler() {
            @Override
            public void handleMessage(Message msg) {
                //刷新完成,取消刷新动画
                refreshLayout.setRefreshing(false);
                adapter.notifyDataSetChanged();
            }
        };
        private ArrayAdapter<String> adapter;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            initData();
            ListView listView = (ListView) findViewById(R.id.lv);
            refreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh_layout);
            refreshLayout.setColorSchemeColors(Color.RED, Color.GREEN, Color.BLUE);
            //设置下拉刷新监听
            refreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
                @Override
                public void onRefresh() {
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            SystemClock.sleep(3000);
                            list.add(0, "李四");
                            mHandler.sendEmptyMessage(0);
                        }
                    }).start();
                }
            });
            adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list);
            listView.setAdapter(adapter);
        }
    
        private void initData() {
            list = new ArrayList<>();
            for (int i = 0; i < 30; i++) {
                list.add("张三:" + i);
            }
        }
    }

     

  • 相关阅读:
    CentOS 6 安装 python and pip
    Qt for Windows:Qt 5.4.0 MinGW 静态编译版本制作 (转)
    Vim 扩展工具 vim-ide (转)
    centos yum 完全卸载依赖
    Linux修改Shell命令提示符及颜色
    tmux 命令
    网络分析shell脚本(实时流量+连接统计)
    ICMP:Internet控制报文协议
    读《分布式一致性原理》zookeeper运维
    同网段和不同网段设备通信原理详解
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/5446776.html
Copyright © 2011-2022 走看看