Bootstrap

ListView制作简单表格

1.ArrayAdapter

适配器的作用是数据和视图之间的转换

ArrayList<E> data=new ArrayList<E>(); 
new ArrayAdapter<E>(MainActivity.this,android.R.layout.simple_list_item_1,data);
它的三个参数:
    MainActivity.this:上下文,当前的activity
    android.R.layout.simple_list_item_1:android sdk内置布局,一个textciew,数组中的每一条数据都将显示在这个textciew中
    data:显示的数组数据,listview根据这三个参数,将data中的每一条数据,读出一条,显示到第二个参数对应的布局中
通过泛型指定要适配的数据类型,在构造函数中把要适配的数据传入即可。

2.ArrayAdapter中的getView()方法

listView中的每一个item的显示都需要Adapter调用一次getView()方法。

public abstract View getView (int position, View convertView, ViewGroup parent)
它的三个参数:
	position:当前位置
	convertView:旧视图(用于将之前加载好的布局进行缓存)
	parent:父视图

3.inflate()方法

加载布局管理器,将xml布局转换为view对象并返回

inflate(int resource,ViewGroup root,boolean attachToRoot)
它的三个参数:
	resource:listview子项布局的id
	root:加载布局的root
	attachToRoot:若为true,这个子项布局会被解析并加载在root下面,
		 若为false,这个子项布局依照root去解析xml并返回view,但是不会被加载到root
	attachToRoot:为false,让layout属性失效,不为这个view添加父布局。

4.用ViewHolder对空间的实例进行缓存

ViewHolder是自己新建的一个内部类
若convertView为null,创建一个ViewHolder对象,将控件存到ViewHolder中,再用setTag()将ViewHolder存到view中。
若convertView不为null,调用view的getTag()把viewHolder取出,viewHolder中存有控件。

5.listview制作简易表格的简单例子<

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;