Android-android listview进行分组显示的时候显示数据的问题,listview在getView()方法里可以设置setTag( ),getTag
android listview进行分组显示的时候显示数据的问题,listview在getView()方法里可以设置setTag( ),getTag,来增加效率,当分组显示数据的时候我如何去设置getTag()和setTag()呢
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
SearchItemView mItem;
mItem= new SearchItemView();
//judge the item content is to be contains of tag
if (tagSearchResultList.contains(searchResultList.get(position))) {
convertView = inflater.inflate(R.layout.search_list_items_tag, null);
mItem.search_pageIndex = (TextView) convertView.findViewById(R.id.search_page_tv);
mItem.search_pageCount = (TextView) convertView.findViewById(R.id.search_curpage_count);
} else {
convertView = inflater.inflate(R.layout.search_list_items_content, null);
mItem.search_content = (TextView) convertView.findViewById(R.id.search_content_tv);
}
}
if (tagSearchResultList.contains(searchResultList.get(position))) {
mItem.search_pageIndex.setText("Page"+(searchResultList.get(position).mPageIndex+1));
mItem.search_pageCount.setText(searchResultList.get(position).mPatternStart+"");
} else {
//make the key word to be red
String mContent = searchResultList.get(position).mSentence;
mItem.search_content.setText(SearchContent);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
可以尝试一下在 convertView 非空的时候 getTag 然后强制类型转给 mItem
如果是 null 在去 inflate 实例化什么的,最后加上 setTag(mItem); 即可
可参考 http://www.cnblogs.com/mybkn/archive/2012/05/22/2512491.html
祝好,
斑驳敬上
设置一个ArrayList记录每个position的view类型,viewholder根据类型的不同定义多个。
getView() 即可通过判断position的类型获得不同的viewholder
直接使用final就可以了,没必要再setTag