作者wvwvwvwvwv (杀死丁力这个杂碎a~)
看板AndroidDev
标题[问题] 使用Glide载入大图 memory的问题
时间Thu Dec 13 15:53:30 2018
手边有一张 1440x2560 容量1.34MB的萤幕截图
Layout部分就一个按钮 + imageview
今天把图片放在drawable,用
Glide.with(testActivity.this)
.load(ContextCompat.getDrawable(testActivity.this,R.drawable.fullscreen))
.into(imageView);
去显示图片
执行後发现imageview的大小不管是 match_parent(1080p的萤幕) 或是 300px x 300px
都是吃100MB左右的memory
後来也改过Glide许多参数
asDrawable
override(width,height)
thumthail
编码改PREFER_RGB_565
都一样会吃到110MB的memory
Glide版本是4.8.0
请问大家是哪边出了问题呢?
发完文後就自己找到答案了XD
关键在load()这边
如果是这样
load(ContextCompat.getDrawable(..)) 就会吃100MB的memory
load(R.drawable.id) 如果是这样memory就只花费20MB左右而已
至於为什麽会这样 只能晚点再去了解为什麽了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.27.105.244
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1544687613.A.BDF.html
※ 编辑: wvwvwvwvwv (114.27.105.244), 12/13/2018 16:59:22
1F:→ starburs: resize? 12/13 17:46
2F:推 zcbxvsdf: ContextCompat.getDrawable是原生的加载方式,所以加载 12/13 19:58
3F:→ zcbxvsdf: 完才丢给Glide,第二个是指定id给Glide,Glide加载时就会 12/13 19:58
4F:→ zcbxvsdf: 处理。 12/13 19:58