为了账号安全,请及时绑定邮箱和手机立即绑定

Android必学-BaseAdapter的使用与优化

难度初级
时长45分
学习人数
综合评分9.63
243人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.3 逻辑清晰

已采纳回答 / lvanli
在最后一节课的视频下面的最右面就有课程资料下载
普通式利用了缓冲机制,但是findViewById比较浪费时间。
逗B式:没有利用Listview提供的缓存机制
老师的插图太逗了!

最新回答 / FINE_Android
因为activity中的this就是context对象,但是fragment中的this却不是,通过getActivity()获取context对象即可

最新回答 / ziom
SimleAdapter在实际中一般不会应用到,大多都是继承BaseAdapter自定义Adapter。

最新回答 / xibu
同问这个问题材,,SQL语句怎样复制相邻前边相同语句的??
讲的不错,循序渐进,以前的老师直接就文艺式,有点蒙。。。。。。
完全没有考虑到listView的感受~!拟人化了~
很棒,当时在培训班老师急急忙忙的把这个讲了一遍。也没有听懂。现在在听一遍有种茅塞顿开的感觉。赶紧在敲几遍就彻底掌握了
源代码在哪可以下载?
接下来是我之前理解的小错误,对于文艺式缓存在ConverView中的控件,我之前说缓存了8个控件,这是不对的,假设聊天界面所有item都是同样的布局,那么Recycler里只缓存了1个item!也就是说Recycler里缓存的item数量是这个ListView里【布局类型】的数量。所以对于每个item上控件的人为缓存,谈不上牺牲空间换时间。 总结:1.无论任何时候都不要使用逗比式。这种方法百害无一利。2.当可以确定item数量非常少的时候,可以使用普通式,即不必要缓存控件。3.绝大多数情况请使用文艺式。参考:http://android.amberfog.com/?p=296(老师用的这个)
上一条我的理解有一点小错误。还拿微信来举例子。假设聊天界面最多一次显示8个item,不管你用什么方式,这8个item肯定从内存中申请出来了。但是当上滑加载新的item时,逗比式肯定是每次都申请新的内存,普通式和文艺式都是反复利用这8个item的内存(第9个用第1个的,第10个用第2个的,以此类推)。而且最关键的问题是ConvertView它就在Recycler那个缓冲池里,不管你用还是不用!在调用getView()方法时都会自动传递给你。
前面说文艺式是牺牲空间换取时间的,你们真的懂了吗?逗比式才是浪费空间!试想当有1w条数据的时候,每次加载新的Item逗比式都要从内存中重新申请一个View但是普通式和文艺式都只是重复利用内存中已有的但是被废弃的Item(已划出界面的Item)的内存。java垃圾回收肯定不会及时回收掉逗比式申请的内存。所以到底谁浪费空间高下立判!至于文艺式缓存的控件,比如微信聊天界面最多能显示8个item,那一共就缓存了8个item控件的内存反复使用,这就是浪费空间了???你在逗我???
大神,直接用SimpleAdapter是不是也可以

最新回答 / EagleLun
java规范中建议使用getter( )和setter( )获取对象值和对对象进行赋值,这主要考虑到了安全性的问题。直接将变量设置成public在这里主要考虑到了方便的问题。我是这样理解的。
课程须知
本课程是Android初-中级课程 1、熟练掌握基本的Android应用程序开发方法 2、熟练掌握Android中常见的适配器的使用 3、熟练掌握BaseAdapter中各方法的意义
老师告诉你能学到什么?
1、了解ListView的缓存机制 2、 BaseAdapter的逗比式 3、 BaseAdapter的普通式 4、 BaseAdapter的文艺式

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消