zoukankan      html  css  js  c++  java
  • ListView控件

     
    打气筒工具:将R.layout.item_listview布局添加到相应的view控件里面
    • View view=LayoutInflater.from(ScondPro.this).inflate(R.layout.item_listview, null);
    • ListView列表控件,他需要两个内容:1.单元布局(单元布局要被填充到listview里面,写在一个layout布局文件中)和 2.数据
    • Adapter:数据源、适配器
    • 第一步:在.Xml布局文件中设置ListView控件(我们只要设置宽高id属性即可)和创建.xml单元布局,
    • 第二步:在activity中创建Listview变量,通过findViewById将变量和布局中的ListView做关联;
    • 第三步:调用Listview中的setAdapter()方法设置数据源,适配器;
    • 第四步:new BaseAdapter,适配对象,通过匿名内部类创建一个适配器BaseAdapter对象,里面有四个抽象方法
    【LayoutInflater inflater=new LayoutInflater.from(MainActivity.this);
    注意:from()括号里面要写 MainActivity.this】
    • LayoutInflater.from(MainActivity.this).inflat(R.layout_list,null);
    • getCount方法是获得数据的数量
    • getItem方法是获得数据内容
    • getItemId方法是获取数据的位置
    • getView方法是获得数据对应的View(实际上我们将单元布局通过打气筒工具填充到了对应的view中,我们只要返回view就行)
    • listview.setAdapter(new BaseAdapter(){
                @Override
                public int getCount() {
    //                有多少条数据就需要创建个多少个view填充到lisrview内
    //                创建view的位置是在getview里面
    //                有多少条数据就调用多少次getview方法因为getview一次只能创建一个view
                    return 20;
                }
     
                @Override
                public Object getItem(int i) {
                    return i;
                }
     
                @Override
                public long getItemId(int i) {
                    return 0;
                }
     
                @Override
                public View getView(int i, View view, ViewGroup viewGroup) {
    //                参数的含义:位置---当前view的位置
    //                LayoutInflater把一个布局文件填充到一个View布局里面
    //                通过打气筒工具填充到创建的view里面
                    view = LayoutInflater.from(ScondPro.this).inflate(R.layout.item_listview, null);
    //                创建布局完毕,return返回给系统
                    return view;
                }};)
  • 相关阅读:
    自定义分页二
    CheckBox实现跨页面多选
    正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。
    DropDownList下拉框多选
    通用查询
    AutoCAD自动加载DLL文件的方法
    软件开发(团队管理)
    正确地做事与做正确的事
    C#.NET实现邮件的发送
    多附件的上传
  • 原文地址:https://www.cnblogs.com/zhaiyaohua/p/5834392.html
Copyright © 2011-2022 走看看