阿里Android规范-08-Bitmap、Drawable与动
1.加载Bitmap图片时,inBitmap选项有什么作用?
【正确】
(1)重复利用内存空间
【错误】
(1)图片压缩
(2)限制清晰度
(3)设置位图信息
2.减小图片占用内存的方法
【正确】
(1)本地png图片预先用TinyPNG压缩
(2)使用inBitmap重复利用内存空间
(3)用RGB_565代替RGB_888
(4)根据实际需要对图片进行缩放
3.关于动画,下列说法
【正确】
(1)在动画结束的回调中,应该判断需要用到的资源是否已经被释放了
(2)应该根据设备情况选择性开启复杂动画。
(3)Activity不可见时,应该及时关闭动画。
【错误】
(1)Animation.AnimationListener#onAnimationEnd()回调可以准确可靠地告知动画结束时机。
4.APK中的png图片,应该怎么处理
【正确】
(1)图片用TinyPNG压缩,以减小包大小
【错误】
(1)尽可能使用原图,避免图片失真
(2)尽可能使用高清大图
(3)为了符合Goole的规范,将同一张图片分别放到drawable-hdpi、drawable-xhdpi、drawable-xxhdpi等目录下
5.以下关于定义一个drawable文件的说法
【正确】
(1)为不同屏幕密度的设备都提供一组drawable
(2)为了精简apk整包大小,在满足需求并且了解清楚用户设备分布的情况的前提下,只支持几种屏幕密度的drawable、比如仅定义xhdpi中的drawable文件
(3)在xhdpi目录下定义live_reward_btn_pressed.png
【错误】
(1)所有drawable文件都放在drawable目录,不区分屏幕密度
(2)在xxxhdpi目录下放置不满足设备屏幕密度的小图
6.使用( )代替RGB_888,在不怎么降低视觉效果的前提下,减少内存占用
【正确】
(1)RGB_565
【错误】
(1)ARGB_8888
(2)ALPHA_8
(3)ARGB_4444
7.不建议使用AnimationDrawable的原因是
【正确】
(1)内存消耗过大
【错误】
(1)动画不流畅
(2)不兼容问题
8.关于RGB_565和RGB_888,以下说法
【正确】
(1)若视觉效果相似,应尽可能使用RGB_565
(2)RGB_888比RGB_565清晰
(3)RGB_565占用内存更少
【错误】
(1)RGB_555比RGB_888清晰
9.使用gif要注册什么
【正确】
(1)gif内存占用更大,需要注意控制内存
(2)需要注意单个gif的大小
(3)注意控制单个页面同时播放的gif个数
【错误】
(1)和普通图片一样,没有太多特殊
10.关于监听动画结束事件,以下做法
【正确】
(1)使用Handler.postDelay()来实现
(2)使用Animation.AnimationListener#onAnimationEnd()并加超时机制
【错误】
(1)直接使用Animation.AnimationListener#onAnimationEnd()回调
(20使用Animation.AnimationListener#onAnimationStart()回调