资源预览内容
第1页 / 共33页
第2页 / 共33页
第3页 / 共33页
第4页 / 共33页
第5页 / 共33页
第6页 / 共33页
第7页 / 共33页
第8页 / 共33页
第9页 / 共33页
第10页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
XXX大学移动互联网开发技术大作业报告 题 目: 电子书APP-书屋 学生姓名: 学 号: 学 院: 专业班级: 完成日期: 2020年 10 月 20 日成绩(百分制): 授课教师: 目录目录21功能描述11.1总体界面11.2书架模块21.2.1显示目录31.2.2设置主题31.2.3设置翻页效果41.2.4设置字体样式41.2.5调节字体大小51.2.6设置字体颜色61.2.7添加书签61.2.8显示书签列表71.2.9清空书签列表71.3用户模块81.3.1用户注册81.3.2用户登录92程序结构102.1整个工程包含的所有JAVA文件102.2整个工程包含的所有布局文件113详细设计123.1主模块设计123.1.1主模块流程图123.1.2主模块关键代码123.2书架模块设计133.2.1书架模块流程图133.2.2书架模块关键代码133.3用户模块设计173.1.1用户模块流程图173.1.2用户模块关键代码183.4数据库设计204运行效果225总结301 功能描述这款电子书APP主要有三个大模块,我的、书城、书架。分别的功能是用户中心,网上书城,我的书架。APP截图:图1.1 电子书APP运行在手机上的效果1.1 总体界面书城:可阅读网上的电子书图1.2 APP整体样式1.2 书架模块点击书架跳转到书架,初始界面有很多本地电子书图1.3 书架界面打开任意一本电子书,所具有的功能:主要有 目录、设置、字体、书签几个模块图1.4 电子书界面1.2.1显示目录点击目录按钮,显示目录。点击目录可跳转到对应章节图1.5 电子书的目录显示1.2.2设置主题点击设置按钮里面有四种主题样式,点击可更换主题。点击护眼主题查看效果颜色换成了偏绿色,点击夜间主题颜色就会换成黑色,对应主题都会有对应样式。图1.6 更改阅读主题1.2.3设置翻页效果点击设置按钮,显示翻页效果的设置,这里有三种翻页效果的设置分别是,仿真翻页、覆盖翻页、无效果。选择仿真翻页查看效果。仿真翻页的效果就类似真实翻书的翻页的效果。图1.7 更改翻页效果1.2.4设置字体样式点击字体按钮,可以更改显示的字体样式,显示现在使用的是默认字体。我们可以点击其他字体。图1.8 字体样式点击切换字体样式使用幼圆字体,查看显示效果和默认字体不一样图1.9 更改字体样式1.2.5调节字体大小点击设置按钮,显示设置字体大小的功能,拖动设置字体的字体条来改变字体的大小,现在是拖到了最大。图1.10 调节字体大小1.2.6设置字体颜色点击字体按钮,看到有设置字体颜色选择蓝色样式,查看效果字体颜色变成了蓝色。图1.11 更改字体颜色1.2.7添加书签点击书签按钮,给当前阅读也添加书签图1.12 添加书签1.2.8显示书签列表长按书签按钮,显示书签列表和每个书签添加的时间,列表里是阅读是添加的书签。图1.13 查看书签列表1.2.9清空书签列表长按书签按钮,点击书签列表的垃圾桶样式按钮即可清空书签列表,查看效果。图1.14 清空书签列表1.3 用户模块点击用户按钮,跳转到用户模块。图1.15 用户模块1.3.1用户注册点击用户登录跳转到用户登录页面,点击页面上的注册按钮注册用户。图1.16 用户注册1.3.2用户登录点击用户登录,用注册过的用户进行登录。图1.17 用户登录2 程序结构2.1 整个工程包含的所有JAVA文件图2.1 整个工程所有JAVA文件的功能2.2 整个工程包含的所有布局文件图2.2 整个工程所有布局文件3 详细设计3.1 主模块设计3.1.1主模块流程图整体模块分为三个模块,主模块的功能主要是让我们可以进入不同的模块,去阅读线上的电子书籍。图3.1 整体模块流程图3.1.2主模块关键代码Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); WebView webView = findViewById(R.id.id_webView); webView.getSettings().setJavaScriptEnabled(true); webView.setWebViewClient(new WebViewClient(); webView.loadUrl(http:/www.jjwxc.net/); public void doBookrack(View v) Intent intent = new Intent(MainActivity.this,ShelfActivity.class); startActivity(intent); public void doUser(View v) Intent intent = new Intent(MainActivity.this,UserActivity.class); startActivity(intent);3.2 书架模块设计3.2.1书架模块流程图图3.2 书架模块流程图3.2.2书架模块关键代码电子书阅读显示Overrideprotected void setScreen() /全屏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);功能菜单的四个功能按钮 Override public void onClick(View v) switch (v.getId() case R.id.button_content: /设置出现动画和位置 mContentPopup.setAnimationStyle(R.style.pop_window_anim_style); mContentPopup.showAsDropDown(mBottomBar, 0, -mContentPopup.getHeight(); lightOff(); break; case R.id.button_setting: int xOff = (mBottomBar.getWidth() - mSettingPopup.getWidth() / 2; int yOff = -mSettingPopup.getHeight() - mBottomBar.getHeight() / 6; mSettingPopup.setAnimationStyle(R.style.pop_window_anim_style); mSettingPopup.showAsDropDown(mBottomBar, xOff, yOff); break; case R.id.button_font: mFontPopup.setAnimationStyle(R.style.pop_window_anim_style); mFontPopup.showAsDropDown(mBottomBar, 0, -mFontPopup.getHeight(); lightOff(); break; case R.id.button_label: saveLabel(); Toast.makeText(mContext, 书签已添加,长按显示书签列表, Toast.LENGTH_SHORT).show(); break; 书签存入数据库 private void saveLabel() Time time = new Time(); time.setToNow(); / 取得系统时间。 String timeStr = time.year + / + time.month + / + time.monthDay; ReadInfo readInfo = mBookPageFactory.getReadInfo(); String objectStr = SaveHelper.serObject(readInfo); Label label = new Label(); label.setBookId(mBookId); label.setDetails(mBookPageFactory.getCurContent(); label.setProgress(mBookPageFactory.getPercentStr(); label.setTime(timeStr); label.setPrePageOver(mFlipView.isPrePageOver(); label.setReadInfoStr(objectStr); label.save();目录功能主要实现代码private class ContentsAdapter extends RecyclerView.AdapterContentsH
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号