android listview嵌套 内部adapter的tag怎么设置

android listview嵌套 内部adapter的tag怎么设置,第1张

饿。。

我没明白你的意思。

android.app.Activity这个类是不能直接设置Adapter的,

如果你想在一个Activity中直接设置Adapter,

可以用ListActivity.

这个类是Activity的子类,

所以Activity有的功能它都有,并接它还有ListView的功能,

你可以在这个Activity中直接通过this.setListAdapter(adapter)方法来为这个Activity设置Adapter。

Android自定义ListView有下面三个步骤:

第一步:准备主布局文件、组件布局文件等

第二步:获取并整理数据

第三部:绑定数据,这里我们是通过自己编写Adapter类来完成的

自定义listview数据源adapter时可以继承的类有3个,分别如下:

BaseAdapter、SimpleAdapter、ArrayAdapter

1、BaseAdapter

这个是使用到最多的,也是实现功能出来的界面效果是最为明显的。

继承BaseAdapter 是需要实现4个方法的:

 @Override  

    public int getCount() {  

        return data.size()  

    }  

    /** 

     * 获得某一位置的数据 

     */  

    @Override  

    public Object getItem(int position) {  

        return null  

    }  

    /** 

     * 获得唯一标识 

     */  

    @Override  

    public long getItemId(int position) {  

        return position  

    }  

  

    @Override  

    public View getView(int position, View convertView, ViewGroup parent) {  

           

        } 

    }

getCount()用来获取数据的长度,getItem(int position)用来获取某一位置的数据,getItemId(int position)用来获取唯一标识 ,最后getView(int position, View convertView, ViewGroup parent)也是最重要的一步,是用来获取返回每一个item的数据。

2、SimpleAdapter

SimpleAdapter使用起来非常方便而且简单,使用SimpleAdapter需要先保存数据,然后保存的数据再通过与写的XML文件中的ID进行绑定即可显示在界面。

List<HashMap<String, Object>> personList 

//list中存放的是map  而map中每个key是属性名称,value是person中的属性值  

personList = new ArrayList<HashMap<String, Object>>()

//循环遍历list,将每一个person加入到map中

for (Person p : list) {

HashMap<String,Object> map=new HashMap<String, Object>()

map.put("ida", p.getId())

map.put("namea", p.getName())

map.put("balancea", p.getBalance())

personList.add(map)

}

//为ListView添加adapter,simpleadapter中第二个参数是List<HashMap<String, Object>>

//new String[] { "ida", "namea", "balancea"}代表map中的键值,new int[] 

{ R.id.personid, R.id.balance, R.id.name }

//代表R.layout.item,中的textView的id

view.setAdapter(new SimpleAdapter(getApplicationContext(), personList,

R.layout.item, new String[] { "ida", "namea", "balancea" },

new int[] { R.id.personid, R.id.balance, R.id.name }))

进行绑定后即可显示在界面。

3、ArrayAdapter

ArrayAdapter是使用的最少的一种,因为只能用来显示一个纯文本list。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7852464.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存