android开发BaseAdapter中getView()里的3个参数是什么意思
BaseAdapter适配器里有个getView()需要重写publicViewgetView(intposition,ViewconverView,ViewGroupp...
BaseAdapter适配器里有个getView()需要重写 publicViewgetView(intposition,ViewconverView,ViewGroupparent) { //省略。。 } 请问这个方法的三个参数是什么意思?作用是什么?我不要简单的翻译哈,最好举个例子具体用法
展开
1个回答
展开全部
intposition位置,一般BaseAdapter都是很多类型一样的数据展示在界面,该属性是判断显示在界面上的是第几个,通过position在BaseAdapter自定义的数组或者集合中取值。并展示在界面上。
ViewconverView展示在界面上的一个item。因为手机屏幕就那么大,所以一次展示给用户看见的内容是固定的,如果你List中有1000条数据,不应该new1000个converView,那样内存肯定不足,应该学会控件重用,滑出屏幕的converView就在下面新进来的item中重新使用,只是修改下他展示的值
代码如下:
Viewv=null;
if(convertView==null){
v=LayoutInflater.from(context).inflate(
R.layout.adapter__item,parent,false);
Holdervh=newHolder();
vh.text=(TextView)v.findViewById(R.id.text1);
v.setTag(vh);
}else{
v=convertView;
}
Holdervh=(Holder)v.getTag();
vh.text.setText(data[position]);
returnv;
ViewGroupparent这个属性是加载xml视图时使用。
inflate(R.layout.adapter__item,parent,false);确定他父控件,减少宽高的测算
ViewconverView展示在界面上的一个item。因为手机屏幕就那么大,所以一次展示给用户看见的内容是固定的,如果你List中有1000条数据,不应该new1000个converView,那样内存肯定不足,应该学会控件重用,滑出屏幕的converView就在下面新进来的item中重新使用,只是修改下他展示的值
代码如下:
Viewv=null;
if(convertView==null){
v=LayoutInflater.from(context).inflate(
R.layout.adapter__item,parent,false);
Holdervh=newHolder();
vh.text=(TextView)v.findViewById(R.id.text1);
v.setTag(vh);
}else{
v=convertView;
}
Holdervh=(Holder)v.getTag();
vh.text.setText(data[position]);
returnv;
ViewGroupparent这个属性是加载xml视图时使用。
inflate(R.layout.adapter__item,parent,false);确定他父控件,减少宽高的测算
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询