listview详解一
来源:互联网 发布:网络教研平台 编辑:程序博客网 时间:2024/06/05 11:46
listview
主要用到三方面的东西
1接收到的数据用于显示在listview 上
2自己定义的适配器
3listview item 的布局文件
总体思路
先在布局文件中定义一个listview
<ListView android:id="@+id/mylist" android:layout_width="match_parent" android:layout_height="match_parent" > </ListView>
在java文件中声明该listview控件
listview = (ListView) findViewById(R.id.mylist);
创建一个适配器 extends BaseAdapter
适配器里面主要是
映射出来item的布局
加载数据
其中创建了一个静态的类型ViewHolder 用于和映射出来的布局文件进行绑定这样就不用每次都进行映射节约资源
private class mylistviewadapter extends BaseAdapter { // 为自己的listview创建适配器 // 用于接收给自己的listview中放东西的容器 private List<Item> list = new ArrayList<Item>(); public void setlist(List<Item> list) { // 创建一个接收list 的工具 this.list = list; } @Override public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int arg0) { // TODO Auto-generated method stub return list.get(arg0); } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return arg0; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) { // 反射listview item里面的布局 convertView = LayoutInflater.from(getApplication()).inflate( R.layout.item_first, null); TextView tv = (TextView) convertView .findViewById(R.id.item_textview); // 创建一个静态的类 用于绑定 holder = new ViewHolder(); holder.tv_first = tv; convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } // 给布局赋值 holder.tv_first.setText(list.get(position).getName() + ""); return convertView; } } private static class ViewHolder { // 创建一个静态用于绑定item的布局映射 TextView tv_first; }
源代码下载链接http://download.csdn.net/download/w965440884/9505966
0 0
- ListView详解(一)
- ListView 详解(一)
- listview详解一
- ListView详解(一)
- C#ListView详解(一)
- Android ListView详解(一)
- Android ListView详解(一)
- Listview详解一(ArrayAdapter)
- Android开发详解之ListView详解一
- Cocos2dx HelloWorld+ListView详解(一)
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- PullToRefresh使用详解(一)--构建下拉刷新的listView
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- 故障案例--在线ddl的一个bug
- 【javascript笔记】this in javascript
- 326. LeetCode_Math_Power of Three
- gson json转换对象及对象对象转换为json帮助类
- listview详解一
- 基于Qt的轨迹还原之一:introduction
- ScrollView与ListView和gridview的时候
- leetcode 032 Longest Valid Parentheses
- 从一个logger引发的lib和dll探讨
- 故障案例--DDL中断后,再次执行失败
- Mysql5.7安装时的默认密码问题
- 华为研发工程师编程题(3)----进制转换
- 第一个servlet小程序