FBReader主要的数据结构和绘制阅读界面~~~
一、手握重拳---数据库
前几章已经把FBReader的大概流程阐述得差不多了,数据已经保存到Model中,接下就是阅读界面的绘制(有人说我用渲染二字不对,我这里就改改)了。但是在绘制文字、超链接、图片之前,有必要去了解一下数据库,看看里面的字段,这是百利而无一害的。因为一个程序的数据结构往往跟数据库有直接或者间接的关联,数据库能够给我们一个比较直观的了解。
从上图可以看出,有关于电子书作者、读书状态、电子书信息相关、喜欢的图书、书签、文件信息相关、超链接等表名。这些信息为我们以后分析代码提供了一个启发,比如Files表,我们可以看看它的字段名:
可以看出又标示这个文件的ID,有文件名,他的路径的id,文件大小等。
同理,其他表中也有相关的字段。不再累述,之后将在需要的地方再做分析。
二、自定View的层次结构
上一篇把Model分析完毕,接下来就把Model保存的数据取出来,画到画布上。而这个画布,FBReader通过自己定义View来实现,这样便于灵活控制显示。网络上有很多采用WebView来显示epub的,就是图个方便,但是webView的话,选取文字或者做一下其他自己定义的功能,比较难实现。有人说直接用TxtView,但是显然是不行的,作为一个高端的阅读器,用TxtView太寒碜了~!
(此处省略N多字,全文请查看http://www.docin.com/p-445063976.html)
暂时没有评论