毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

Android平台手机文本阅读软件的开发与设计(13)

时间:2016-12-18 11:00来源:毕业论文
图 4.5 TabMenu打开时的动画popup_enter.xml 图 4.6 TabMenu关闭时的动画popup_exit.xml 图 4.7阅读界面运行截图 图 4.8 TabMenu显示效果截图 4.2 数据库实现 在Android系统内


 
图 4.5 TabMenu打开时的动画popup_enter.xml
 
图 4.6 TabMenu关闭时的动画popup_exit.xml
 
图 4.7阅读界面运行截图
 
图 4.8 TabMenu显示效果截图
4.2    数据库实现
在Android系统内嵌了一个轻量级数据库SQLiteDataBase,它占用的资源非常低、需要的内存空间少、处理速度比较快和支持事务处理功能等。
在文本阅读软件中,主要创建了三张表,分别是book_info表、book_mark表、book_read_setting表。
Android数据库的存储位置在data/data/com.lrc/databases/目录下,Android是利用ContentProvider作为内容提供商,SQLiteOpenHelper数据库帮助类来进行对数据库的创建和操作。通过Context.getContentResolver()方法直接对数据库进行操作。程序中数据库的类为BookOpenHelper extend SQLiteOpenHelper和BookContentProvider extend ContentProvider。
Android提供了标准的数据库创建方式,继承SQLiteOpenHelper,实现onCreate和onUpgrade两个方法,有个好处就是便于数据库版本的升级,连接数据库的算法如下:
图 4.9 程序截图
ContentProvider 提供数据库操作方法和为其它应用程序提供访问此数据库的途径,具体的实现如下:
 
图 4.10 程序截图
4.3    系统功能实现
4.3.1    数据实体化
为了能够更好的调用数据库中的数据,在本课题中设计了一个实体对象层,将数据实体化。在此层中的结构体对应着数据库中几个表的具体数据:
建立书籍信息结构体如下所示:
public class Book
{
    private int bookId;                    //书籍ID
    private String bookName;            //书名
    private String bookAuthor;            //作者
    private String bookPath;            //书籍路径
    private String bookAddTime;        //添加时间
    private String bookOpenTime;        //最后打开时间
    private int bookCategoryId;        //所属类别ID
    private String bookCategroyName;    //所属类别名
    private String bookSize;            //书籍大小
    private String bookProgress;        //最后阅读进度

    set、get方法略
    ……………………………..
}    
建立书签信息结构体如下所示:
public class BookMark
{
    private int bookMarkId;                //书签ID
    private int bookId;                    //书籍ID
    private String bookName;            //书名
    private String bookPath;            //书籍路径
    private String bookMarkAddTime;    //书签添加时间
    private String bookMarkProgress;    //书签进度
    private String bookMarkDetail;    //书签描述
    private int bookMarkBeginPosition;//书签添加时文本Begin值 Android平台手机文本阅读软件的开发与设计(13):http://www.youerw.com/jisuanji/lunwen_1192.html
------分隔线----------------------------
推荐内容