今天偶尔看到了楼主提出的某个问题的答案,ListView中如果不用ViewHolder怎么实现View的复用。这个问题就是要给convertView设置Tag,我们通常是把ViewHolder作为tag设置到convertView中,但是View的setTag方法其实还有一个重载,那就是setTag(int,Object),这里前面的int是一个key,后者则是value,内部采用一个SparseArray来维护,所以设置只需要把内部view控件的id作为key,该View作为value,调用setTag方法就可以了。在拿到convertView的时候,也可以通过getTag(int)来获取到该view,也可以避免多次调用findViewById从而实现复用。
点赞 评论

相关推荐

Java转测开第一人:这种就是饼 把应届当廉价劳动力用完然后丢掉
你觉得今年秋招难吗
点赞 评论 收藏
分享
Aurora23:属于挂一半,暂时进池子了,隔一段时间没有其他组捞的话就彻底结束了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务