我应该使用 Bitmap 还是 Drawable 来存储在 Android 上的 ImageCache 中?
我实现了一个ImageCache。但我很好奇存储什么类型的成本会更低。
现在我使用 BitmapFactory
从互联网获取图像,因此我首先获得一个 Bitmap
。 我应该转换为 Drawable
来存储在我的 ImageCache 中还是只存储位图就可以了?
有什么想法吗?
谢谢。
I implemented a ImageCache. But I'm curious about what type to store in it will cost less.
Now I use BitmapFactory
to get the images from the internet, so I get a Bitmap
first.
Should I convert to a Drawable
to store in my ImageCache or just store the Bitmap is fine?
Any ideas?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
只需存储位图即可。这就是您要缓存的内容,我不确定首先将其推入 BitmapDrawable 中会获得什么。作为 Drawable 肯定会占用更多空间,因为它无论如何都包含位图。无论哪种方式,您都不会真正失去任何东西,因为两者都可以来回转换。
Just store the Bitmap. That's what you're caching and I'm not sure what you'd gain by shoving it into a BitmapDrawable first. It would definitely take more space as a Drawable since it contains the bitmap anyway. You don't really lose anything either way as both are convertible back and forth.
一切都取决于您是否想要缓存具有不同状态的图像,例如选择器(按下、聚焦等)。
与缓存可绘制对象相比,位图将不包含此信息。
Everything depends on if you want to cache an image with different state like a selector (pressed, focused, etc).
The bitmap will not contain this information compare to caching the drawable.