关于findbyid方法
视频既然说findById方法耗时,为什么这里还是用到findById方法
视频既然说findById方法耗时,为什么这里还是用到findById方法
2015-09-01
我回答下,这里有两个问题。
1、首先第一这里的关键不是findviewbyid比其他耗时。不是这个原因。这里主要的原因是,如果只是纯粹的使用findViewById,那么其实在每次调用getView这个方法的时候都创建了控件对象。简单来说比如你有10个item,那么对于的item中的ImageView对象创建了10个。假如你item有1000条1万条,那对于的你里面的对象就创建了多少个。这样太消耗内存了。
2、而通过setTag和getTag的方法,其实只是在第一次创建了控件对象,之后一直在复用之前的。
3、这里所谓的文艺式,其实核心内容就是复用。复用两个内容。第一个是整个item的view对象。第二个就是item中里面的单个控件。简单来说对象还是那个对象,唯一不同的就是对象里面的参数。
举报