XListView

来源:互联网 发布:辣木籽退伍军人淘宝 编辑:程序博客网 时间:2024/06/07 02:07

XListView

XListView是github上的开源第三方控件,内部封装好的一个类XListView 其内部包含XListViewFooter XListViewHeader 两个自定义类(控件)如此实现上拉加载更多、下拉刷新,此控件内部引用自己的布局 作为加载的界面,此控件类似于PulltoRefreshView 只不过比PulltoRefreshView上拉时没有显示加载更多的视图


效果图 :


先写XML文件,设置一个ID

    


再来写Java类
public class XListView extends Activity {    private XListView mXListView;    List datas = new ArrayList();    private MyAdapter adapter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initDatas();        mXListView = (XListView) findViewById(R.id.xlv);        //设置适配器到ListView        adapter = new MyAdapter();        mXListView.setAdapter(adapter);    }    //模拟网络数据    private void initDatas() {        for (int i = 0; i < 50; i++) {            datas.add("静静爱民民和雷雷" + i + "次");        }        try {            Thread.sleep(1000);        } catch (InterruptedException e) {            e.printStackTrace();        }    }    private class MyAdapter extends BaseAdapter{        @Override        public int getCount() {            if(datas != null){                return datas.size();            }            return 0;        }        @Override        public Object getItem(int position) {            if(datas != null){                return datas.get(position);            }            return null;        }        @Override        public long getItemId(int position) {            return position;        }        @Override        public View getView(int position, View convertView, ViewGroup parent) {            //模拟item为TextView            TextView textView = new TextView(getApplicationContext());            textView.setText(getItem(position)+"");            //设置字体大小和颜色//            textView.setTextColor(Color.GREEN);            textView.setTextSize(22);            //停止刷新            mXListView.stopRefresh();            adapter.notifyDataSetChanged();            return textView;        }    }}

运行得到结果即可

原创粉丝点击