vuandroid pef 阅读器 pdf文件->bitmap 整体流程分析
2012-04-23 11:08
501 查看
在DocumentView line 70 new 所有的Page ---> 在BaseViewerActivity 中的onCreate方法里 调用DocumentView的showDocument方法,该方法里启动线程做: init() updatePageVisibility(): 调用Page里的PageNodeTree的updateVisibility()--> PageTreeNode 的line 30 行->50行 line42: decodePageTreeNode(); 代码: 1.创建DecodeService DecodeService decodeService = new DecodeServiceBase(new PdfContext()); 2.创建DocumentView: DocumentView documentView = new DocumentView( ); 3. 建立decodeService和documentView之间的依赖关系: decodeService.setContainerView(documentView); documentView.setDecodeService(decodeService); decodeService.open("pdf文件路径 "); 4. documentView.showDocument(); 然后在滚动DocumentView的过程中: 调用documentView. updatePageVisibility(); documentView.updatePageVisibility(){ for(Page page:pages.values()){ page.updateVisibility(); } } page.updateVisibility 就调用: 其成员属性PageNodeTree node 的 updateVisibility() { …. decodePageTreeNode(); //这个方法就是真正触发解析当前页pdf。 … } PageTreeNode.decodePageTreeNode(){ … documentView.decodeServivce.decodePage(….); //调用DecodeService的方法 } DocumentServiceBase.decodePage(….){ … 用线程池技术启动一条线程,该线程里执行 performDecode(DecodeTask) 方法 } DocumentServiceBase.performDecode(DecodeTask task){ 1.调用 CodecPage对象 的 renderBitmap 方法,真正生成Bitmap. 2.调用task的回调decodeCallback方法的decodeComplete(Bitmap bitmap) 方法 3.这个回调是在documentView.decodeServivce.decodePage(… decodeCallback()…)传 过来的. } 整个流程结束.
相关文章推荐
- <5>Android HAL hardware.h 源码文件分析 路径:/hardware/libhardware/include/hardware/hardware.h
- Android 文件解析->解码->输出 的个人分析
- Android <uses-sdk> 和 target 分析
- [Network]Android N 新wifi connect&auto connect流程分析
- Android系统移植与调试之------->build.prop文件详细赏析
- <转载>Android中调用系统所装的软件打开文件
- Android 4.2 Input Event事件处理流程<一>事情派发
- Android 自定义View背景动画 流程简读 <2>
- Android 读取清单文件<meta-data>元素的数据
- Android---->Allapps加载流程详解【AndroidICS4.0——>Launcher系列五】
- android源码解析(十六)-->应用进程Context创建流程
- Android系统开发 - 扩展Androidmanifest.xml文件中<application>标签的属性
- Android---->Allapps加载流程详解【AndroidICS4.0——>Launcher系列五】
- 24>文件上传分析
- 分析Android&nbsp;根文件系统启动…
- Android:添加自己的应用到“分享”->"发送文件"选项
- JNI开发的常见错误&&Android.mk文件说明&& jni开发的简便流程
- Android 开发之旅:深入分析布局文件&又是“Hello World!”
- 深度分析:Android4.3下MMS发送到附件为音频文件(音频为系统内置音频)的彩信给自己,添加音频-发送彩信-接收彩信-下载音频附件-预览-播放(三,接收彩信<1,接收短信>)
- <为知更新>android 的 Launcher 分析