android listview 分组的时候 ViewHolder缓存怎么做呢?
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){//TODOAuto-generatedme...
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
先判断是标签项还是数据项
if(groupkey.contains(getItem(position)))
{
convertView=LayoutInflater.from(getActivity()).inflate(R.layout.cart_insurance_list_tag, null);
//加载标签项
}
else
{
convertView=LayoutInflater.from(getActivity()).inflate(R.layout.cart_insurance_list_item, null);
//加载数据项
}
TextView text=(TextView)convertView.findViewById(R.id.cart_insurance_title);
text.setText((CharSequence) getItem(position));
return convertView; 展开
// TODO Auto-generated method stub
先判断是标签项还是数据项
if(groupkey.contains(getItem(position)))
{
convertView=LayoutInflater.from(getActivity()).inflate(R.layout.cart_insurance_list_tag, null);
//加载标签项
}
else
{
convertView=LayoutInflater.from(getActivity()).inflate(R.layout.cart_insurance_list_item, null);
//加载数据项
}
TextView text=(TextView)convertView.findViewById(R.id.cart_insurance_title);
text.setText((CharSequence) getItem(position));
return convertView; 展开
2个回答
展开全部
新建一个ViewHolder类,里面有几个属性是你当前item项的控件,比如你当前item项的控件有2个TextView,就在ViewHolder类中设置2个TextView属性。然后用构造方法传参。这样你在重写getView方法时,new一个ViewHolder的实例,把你item项的两个textview当做参数传入即可。
更多追问追答
追问
问题是listview 多种item布局的时候怎么做缓存。不单单只有一个item布局。
追答
这个不是很简单吗,ViewHolder写多个不同的构造函数用来应对不同的布局
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询