Displaying Bitmaps in Your UI [在UI上呈现Bitmap]
- 这一课会演示如何运用前面三节课的内容,使用后台线程与Cache机制来加载图片到
ViewPager
与GridView
组件,并且学习处理并发与配置改变问题。
- [并发问题的处理确实需要好好考虑,大多数App都没有仔细考虑到这个问题,会导致浪费更多的资源,效率不够]。
Load Bitmaps into a ViewPager Implementation [实现加载图片到ViewPager]
-
希望你有发现上面示例存在的问题:在UI Thread中读取图片可能会导致程序ANR。使用在Lesson 2中学习的
AsyncTask
会比较好。
- 在
BitmapWorkerTask
中做一些例如resizing
or fetching images from the network,不会卡到UI Thread。如果后台线程不仅仅是做个简单的直接加载动作,增加一个内存Cache或者磁盘Cache会比较好[参考Lesson 3],下面是一些为了内存Cache而附加的内容:
Load Bitmaps into a GridView Implementation [实现加载图片到GridView]
- grid list building block是一种有效显示大量图片的方式。这样能够一次显示许多图片,而且那些即将被显示的图片也处于准备显示状态。如果你想要实现这种效果,你必须确保UI是流畅的,能够控制内存使用,并且正确的处理并发问题(因为
GridView
会循环使用子视图)。
- 下面是一个在Fragment里面内置了ImageView作为GridView子视图的示例:
- 与前面加载到图片到ViewPager一样,如果setImageResource的操作会比较耗时,有可能会卡到UI Thread。
- 可以使用类似前面异步处理图片与增加缓存的方法来解决那个问题。然而,我们还需要考虑GridView的循环机制所带来的并发问题。为了处理这个问题,请参考前面Lesson 2:Processing
Bitmaps Off the UI Thread。下面是一个更新的解决方案:
Note:对于ListView
同样可以套用上面的方法。
- 上面的方法提供了足够的弹性,使得你可以做从网络加载与Resize大的数码照片等操作而不至于卡到UI Thread。
- 对于完整的代码示例,请参考Lesson 0:章节概览,下载完整示例。
学习自:http://developer.android.com/training/displaying-bitmaps/display-bitmap.html,请多指教,谢谢!
转载请注明出处 :http://blog.csdn.net/kesenhoo,谢谢配合!
分享到:
相关推荐
开源项目-boljen-go-bitmap.zip,go-bitmap - Some simple bitmap utilities - Could someone please review SetAtomic?
软件开发网在此之前给大家介绍过图片加载框架Glide的基本用法介绍,大家可以先参考一下,本篇内容更加深入的分析了Glide获取图片Path、Bitmap用法,以及实现的代码分析。 1. 获取Bitmap: 1)在图片下载缓存好之后...
Android-使用Matrix对Bitmap进行处理
Android开发者学习笔记-View、Canvas、bitmap.pdf
This project came about as part of my blog post: http://www.senab.co.uk/2012/07/01/android-bitmap-caching-revisited/ Android-BitmapCache is a specialised cache, for use with Android Bitmap objects. I...
android中对Bitmap图片设置任意角为圆角
开源项目-seiflotfy-s-bitmap.zip,S-Bitmap: Distinct Counting with a Self-Learning Bitmap (an equivalent to HyperLogLog) implemented in Go
android-openCV中无法将Bitmap转换为Mat.pdf
Android不支持将Bitmap转换成单色的Bmp图片,所以参考Bmp格式说明,自己写了一个转换类。亲测有效!!!
主要介绍了Android 实现把bitmap图片的某一部分的颜色改成其他颜色,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
NULL 博文链接:https://chen592969029.iteye.com/blog/749100
Android开发之常用必备工具类图片bitmap转成字符串string与String字符串转换为bitmap图片格式 博文介绍:http://blog.csdn.net/qq_21376985/article/details/52083611
sa-jdi-1.8.0.jar 位图BitMap
Android图片Bitmap和字符串String之间相互转换的工具类,外加项目代码,封装好的,直接可以用,
使用clippath实现的CircleImageView,没有Bitmap,没有锯齿
Android中压缩bitmap的工具类,用于压缩bitmap图片用,适用于图片体积过大而同时显示等对图片质量要求不大的场景
CompressHelper 压缩文件,压缩图片,压缩Bitmap,Compress,CompressImage,CompressFile,CompressBitmap
可将TIF或TIFF格式的传真图片转换成bitmap读取出来 经实际测试, 可以查看TIFF或TIF格式的图片. 请放心下载
parallaxviewpager通过设置一个背景图片,使原有的ViewPager页面与这个背景图片间实现视差效果。这就要求你的背景图片的高宽比要大于屏幕的高宽比。效果非常不错。项目地址:...
我就废话不多说了,大家还是直接看代码吧~ //Uri.parse(file://+result.getImage... //方法一:通过uri把图片转化为bitmap的方法 Bitmap bitmap= BitmapFactory.decodeFile(path); int height= bitmap.get