




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
太原理工大学毕业设计(论文)用纸太原理工大学毕业设计(论文)任务书 第1页毕业设计(论文)题目:基于Android的滚动截屏工具的设计与实现全套设计加扣 3012250582毕业设计(论文)要求及原始数据(资料):1综述国内基于Android截屏工具的现状;2熟练掌握Android的应用与分析,训练编写安卓程序的能力;3设计并实现截屏工具中针对手机滚动截屏功能;4深入分析基于Android的滚动截屏工具的关键技术与编写语言;5训练检索文献资料和利用文献资料的能力;6训练撰写技术文档与学位论文的能力。第2页毕业设计(论文)主要内容:1综述截屏工具在日常生活中的应用;2了解安卓应用的相关技术;3熟悉基于Android的滚动截屏工具的开发环境; 4设计截屏工具中针对手机滚动截屏功能;5. 深入分析截屏APP的关键技术与编写语言JAVA的设计流程;6熟练掌握基于Android平台的APP编写;学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 第3页主要参考文献(资料):1 孟晓龙. Win7系统下Android开发平台的搭建D. 西南交通大学信息学院. 20112 镜花水月. 自己做主播 如何录制Android屏幕内容J. 电脑爱好者. 2015(233 武海峰. 移动应用在Android平台上的部署J. 程序员. 2009(05)4 陈璟,陈平华,李文亮. Android内核分析J. 现代计算机(专业版). 2009(11)5 贾云刚. Android十大优秀应用程序J. 互联网天地. 2008(07)6 陈昱,江兰帆. 基于Google Android平台的移动开发研究D.福建电脑.2008(11)7 张敦华,刘建. Java动态类加载机制及其应用J. 计算机工程与设计. 2004(03)8 ETIENNE PAYET. Static analysis of Android programs. Information and software technology. 2012, 54(11)9 DAVID FLOWERS. INTERFACING ACCESSORIES ON ANDROID. Electronics World. 2014, 120(1934)10 GIMSON GARFINKEL. Android. Technology review. 2008, 20(3)专业班级软件1221班学生要求设计(论文)工作起止日期2016年3月21日2016年6月24日指导教师签字日期2016年3月21日教研室主任审查签字日期系主任批准签字日期基于Android的滚动截屏工具摘 要随着信息技术的发展,科技也在不断的进步,人们的生活也越来越好,我们生活在信息世界里,我们身边充斥着无穷无尽的信息,每天面对无数的信息。在智能手机发展迅速的今天,安卓系统变得越来越受欢迎。每个人的手机里都有上百款APP。在这之中,我们可能用的最多的就是社交软件。在我们现在生活的这个地球村里,我们之间的交流变得越来越便捷。自从微信推出以来,“朋友圈”成为了我们生活中必不可少的一部分。以及流行到现在都还没断的微博热,随时随地大家都在刷朋友圈,刷微博。但是,偶然一次机会发现微博中不能添加太长的文字,朋友圈也是一样的,本工具可以滚动生成长微博图片,可以添加图片,视频,制作精美的长微博,朋友圈图片。本文以设计Android滚动截屏长微博为研究目标,首先对Android滚动截屏长微博的课题背景做了简要的阐述,其中主要包括Android操作系统的现状和未来的发展趋势、研究内容及意义、系统性能及需求分析。然后,对Android的开发平台给出本系统开发环境的搭建方法以及下载打包到目标虚拟机上进行测试;介绍Android滚动截屏长微博系统总体设计模式,分析Android滚动截屏长微博界面设计模式的各个子项功能,并进一步扩展Android滚动截屏长微博的特色功能,结合Android手机用户的市场需求完成详细设计。此外,本文还对当下主流的Android手机操作系统进行了真机测试,努力想确定出适合Android系统开发的平台版本。然后介绍在本次开发过程中用到的Java、数据库等关键技术的设计。根据Android滚动截屏长微博的需求分析,详细设计出各个子模块的功能,然后根据各项的子模块功能,列出详细的用例描述。Android滚动截屏长微博将系统分为Android文本基本编辑功能、文本保存功能、文本截图功能。然后采用Java语言编写,以Android提供的Intent、Activity机制作为数据的映射操作,在Android studio环境下完成Android滚动截屏的模型设计。完成以上功能模块设计的基础上,进一步完善Android滚动截屏长微博的主界面设计,提供给Android手机用户一种独特的界面风格样式。最后,本文还指出Android滚动截屏长微博不足之处。关键词:安卓;软件开发;长微博;滚动截屏The Design And Implementation Of Rolling Screen Application Based On AndroidAbstractWith the development of information technology, technology is also constantly progress. Peoples lives are getting better and better. We live in the information world. We are filled with endless information. Face countless messages every day. Smart phones are developing rapidly today. Android systems are becoming more and more popular. There are hundreds of APP on each persons cell phone. In this, we use the most likely social software. In the village of the earth we live in, the communication between us is becoming more and more convenient. Since the launch of WeChat, the circle of friends has become an indispensable part of our life. As well as the popularity of the micro-blog is still not broken, anytime, anywhere we all brush circle of friends, Micro-blog brush. But, occasionally an opportunity to find micro-blog can not add too long text. Circle of friends is the same. This tool can scroll the growth of micro-blog pictures, can add pictures video, beautifully crafted micro-blog, circle of friends. Based on the design of Android rolling screen long micro-blog as the research target. Briefly introduce the background paper on Android rolling screen long micro-blog. Including the Android operating system, the status quo and future development trends, Research content and significance, system performance and requirement analysis. Then, on Android development platform gives the system development environment to build and download package to the target virtual machine test; introduced Android rolling screenshots long micro blog system overall design pattern, analysis of the Android rolling screenshots long micro Bo interface design pattern of each sub function, and further expansion of Android rolling screenshots of the long micro Bo features and complete the detailed design combined with the market demand of Android phone users. In addition, this paper also on the current mainstream of the Android operating system for mobile phones were real test, trying to identify suitable for the Android platform version. And then introduces the design of Java, database and other key technologies used in the development process. According to the Android rolling screenshots of the long micro Bo needs analysis, detailed design the function of each sub module. Then according to the function module, list detailed use case description. Android rolling screenshots long micro-blog will system is divided into Android basic text editing function, save the text functions, text screenshot function. Then, using Java language, using Android Intent and activity as data mapping operation mechanism, complete the design model of Android file manager in the Android studio environment. Complete the above function module design based on, to further improve the Android screenshot of a long micro Bo main interface design of rolling, available to Android mobile phone users a unique style interface style. Finally, the paper also points out that the shortcomings of micro-blog Android rolling screen length.Abstract:Android;software development;long weibo;ScrollView 目 录第1章 绪 论11.1 研究背景11.2 研究现状和发展趋势21.3 研究意义2第2章 开发平台与环境32.1 开发平台介绍32.1.1 Android介绍32.1.2 Java介绍52.1 开发工具介绍8第3章 系统分析103.1 需求分析103.2 系统目标11第4章 系统总体设计124.1 总体设计流程124.2 数据库设计15第5章 详细设计与系统实现165.1 详细设计165.1.1 欢迎模块165.1.2 main模块(欢迎模块)175.1.3 列表模块185.1.4 编辑模块195.2 系统实现205.2.1 欢迎模块205.2.2 main模块(欢迎模块)245.2.3 列表模块275.2.4 编辑模块29第6章 软件测试326.1 测试目标326.2 测试结果336.2.1 欢迎界面测试336.2.2 主界面346.2.3 编辑界面366.2.4 截图存入图库或分享37第7章 总结387.1 后续完善问题387.2 总结38参考文献39第1章 绪 论1.1 研究背景当今社会在哪里能找到最新最热的新闻,随着社会运转速度的加快和人们的生活节奏的加速发展,信息流动的速度更是愈发的迅猛,碎片化的内容好比短篇小文字比长篇表达更适合人们的需求,微博上的内容越来越成为了适合时代的需要的必备品。微博充分满足了现代社会快节奏高压力社会下人们个人表达与倾诉沟通的需求的急剧上升。微博里有不对称人际关系:关注与被关注的;以及独特的广播式信息流动模式,因而给人们带来了一种全新的沟通方式。任何用户都能在140个汉字之内就能记录与分享观点,发表自己的新鲜事,发表自己的新想法,发表自己的新情绪,而再也不需要因为一个情绪、活着一个灵感去费力地编辑一个标题,然后经过一段加工的文字发表一篇文章。微博的出现也是互联网时代网络更加面面俱到的一种表现,微博提供了一种全新的沟通工具,这是一种介于人与人互动和广播之间的传播媒介工具。但是先如今对于很多大多数朋友来说,140个汉字却远远不够表达自己的情绪,然而我们都想要找到一种在博客和微博的中间体。那么我就想到了滚动截屏,从而利用滚动截屏做出长微博,生成图片,构造出微博和博客的中间体,既拜托了博客的冗长,有脱离了微博短小的缺点。既能随时随地的发现新鲜事,又能尽情的抒发自己内心的感受。本软件基于当下最流行的安卓系统,自从2007年11月5日,安卓系统发布以来,可以说是手机真正的变得智能,真正的体会到了“智能”,直到今天它已经基本可以取代我们的pc,在pc上可以做的事情,基本都可以在安卓手机上完成。这个绿色的小机器人,对手机进行了一次彻底而深远的革命。安卓系统时至今日已经发布了6个大版本的更新,每一代都有一个好听的名字,阿童木(Android Beta),发条机器人(Android 1.0)。后来由于涉及到版权问题,谷歌将其命名规则变更为用一些好吃的甜点来为他们的系统更新来命名。1.2 研究现状和发展趋势伴随着微博的发展,我们很多时候 140 字早已不足以能表达我们的所思所想,可如若在情思寄予到博客等没有字数限制的工具,那么传播性就又远不如微博,那么长微博就由此应运而生。在发展初期的长微博,也无非是在微博中挂载一段文章链接,或者又是将纯文字直接转化为点阵图像发布。可是随着人们对于长微博的需求与日俱增,所以长微博应用的功能也就日益的多样化。关乎于长微博的介绍有很多,APP也更是数不胜数,就现有的APP来说,也是有许多的不足,比如说有这几点,第一截图的时候不能把状态栏标题栏去除,第二不能直接分享至微博,第三软件体积庞大,无用功能过多。现在我也做了基于Android的滚动截屏工具,以实现长微博的功能,针对以上三个问题进行了优化,完善了不足之处,当然,没有最好只有更好,我的软件也可能存在未知的问题,在以后的版本中我会更加完善。1.3 研究意义长微博是通过图片发布文字信息的一种形式,起因是微博通常不得超过140字,故将文字转化为点阵图像发布。长微博最主要的作用是突破140字限制,但后来通过附带相应文字版本的链接演变为博客和长文章的入口。目前的安卓系统是自带有截屏功能的,但是只能实现对当前屏幕的截取,无法实现长微博的生成,大多数长微博工具都在pc端,所以这样一个工具一定会得到大家的欢迎。第2章 开发平台与环境2.1 开发平台介绍2.1.1 Android介绍图2-1 Android随着4G、WIFI等技术、智能手机的普及以及智能应用的不断增加,从2008年9月SDK 1.0推出到目前Android N的即将发布为止,Android市场占有率逐渐提高,Android应用也随着市场的扩大而大幅度增加,据相关人员分析,2016年春节过后Android系统手机占国内76.4%,相信未来的Android会更加优秀。再来说一条数据,最新数据显示,安卓的市场占有率为58.9%,iOS稳居第二38.3%,WP 4.8%。WP系统虽然走出了1%的极少数,iOS的占比率比去年来说下降了3.2%,安卓系统却稳健的进步。上一次苹果在中国市占率降低还要追溯到2014年8月。这些数据表明安卓系统正在全球市场蚕食原属于iOS和Windows Phone的市场,苹果要想挽回颓势,还需继续努力。谷歌退出中国市场,在互联网端的影响无疑是巨大的,但是就移动通信终端来说,Android受到的影响却是微乎其微,只关乎到软件,市场推广方面则基本没受到什么影响,未来的前景还是非常美好的,因为开源的优点,人类智慧是无限的,让我们翘首企盼更多更好的基于Android的产品吧。(1) 四大组件Activity是Android程序与用户交互的窗口,从视觉效果来说,一个Activity占据了当前正在显示在手机上的窗口,响应所有在本发生的窗口事件,它具备有控件,菜单等界面元素。或者内部逻辑来说,Activity为了能使各个界面状态保持,需要做很多数据持久化的事情,也还需要更加妥善管理他的生命周期,以及一些转跳的逻辑。Service可以说就是剥离了界面的Activity,它们在很多Android的概念方面比较接近,都是封装了一个完整的功能逻辑,通常Service都是后台长时间运行,通过接受上层指令,从而完成相关事务的模块。它内部定义好需要接受的Intent,或者提供同步或异步的接口,接受上层绑定了它后,通过这些接口(很多时候都是RPC的.)进行通信。Broadcast Receiver接收一种或者多种Intent跳转做触发事件,接受相关消息,做一些简单的处理,转换成一条Notification,统一了Android的事件广播模式。Content ProviderContent Provider提供了一个供第三方应用数据访问的方案。它可以派生Content Provider类,从而对外提供所需要的数据,像数据库一样来进行选择或者排序或者分组,屏蔽掉了大部分内部数据的任何存储细节,通过向外提供统一的接口模型,可以更大的简化上层应用和前端的调用,对数据的整合提供了更出色的解决方案 Android 五大布局: FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。(2) 五大布局FrameLayout框架布局就是所有东西依次都放在左上角,可能会会重叠,所以这个布局比较简单,也只能放一点比较简单的东西。LinearLayout线性布局中每一个LinearLayout里面又可分为垂直布局(android:orientation=vertical)和水平布局(android:orientation=horizontal )。当选择垂直布局时,每一行就只允许有一个元素,如果设置多个元素的话只能依次垂直往下;当选择水平布局时,只有一行,每一个元素只能依次向右排列。AbsoluteLayout绝对布局可以用X,Y坐标来指定元素的位置,这种布局方式也比较简单,但是比较死板,缺乏灵活性,比如在屏幕旋转时,往往会出现很多问题,而且多个元素的时候,计算起来相对比较麻烦。RelativeLayout相对布局可以理解为用某一个元素为全局的参照物,通过它来定位的布局方式。主要属性有:相对于某一个元素android:layout_below、android:layout_toLeftOf相对于父元素的地方android:layout_alignParentLeft、android:layout_alignParentRighTableLayout表格布局中每一个TableLayout里面有表格行TableRow,它相当于HTML中的table,想Excel表格一样,TableRow里面可以具体定义每一个元素也可以嵌套使用。每一个布局都有自己适合的方式,这五个布局元素可以相互嵌套应用,做出美观的界面。2.1.2 Java介绍图2-2 JavaSun Micro systems公司在1995年5月推出了Java程序设计语言,也就是我们常说的Java语言,Java的如下几大魅力:首先是跨平台、然后是动态的Web、最后还有Internet计算。在这之后,Java非常容易被广泛接受,并且很大地推动了计算机的迅速发展,我们平常用的浏览器都可以支持Java applet,与此同时Java的技术也不断获得更新。一般来说,Java平台主要是由Java Virtual Machine和Application Programming Interface这两大部分组成,现如今的Java已经几乎可以用于所有的操作系统,而且Java程序很大的一个优点就是只需要编译一次,就能在各种系统中运行。Java是一种可以支持网络计算的面向对象的程序设计语言,它在吸收了C+语言的优点的同时也增加了其它他特有的特性。Java语言相对于C语言而言是更加简单的,Java语言的语法虽然跟C语言和C+语言很相近,但是我们可以很容易学习Java语言,而且最重要的是Java语言中摒除以一些东西,也就是说,它没有C+语言中那些很难理解的特性,就比如操作符重载、还有多继承等;Java语言中只有类、接口和继承等,一般而言Java只支持类之间的单继承,如果想要实现多继承要使用接口,并且用implements来支持类与接口之间的实现;Java语言的健壮性体现在Java的强类型机制、异常处理、废料的自动收集等方面,尤其是Java的安全检查机制;Java语言是通常被用在网络环境中,Java语言除了本身自己拥有安全特性外,它还提供了一个安全机制用来防恶意代码的攻击;Java语言的可移植性是由于体系结构的中立性,Java有一套严格的规定,它规定了各个基本数据类型的长度,它的系统本身也具有很强的可移植性;除此之外,Java程序中的类可以动态地被载入到运行环境中,可以通过网络来载入所需要的类。抽象它指的是用代码形式来表示世界中事物的一些行为;而数据抽象针对的是对象的属性,是用代码的形式表示现时世界中一类事物的特性。抽象就是只选择其中的一部分,不需要了解全部问题,以此来充分表现出当前主题,主要包括两个方法:过程抽象和数据抽象,过程抽象针对的是对象的行为特征,继承继承的特性将提供一种可以表述共性的方法。继承就是类的重用,它是一种联结类的层次模型,也就是说对象的新类可以从现在已经存在的类中派生,即类继承。派生类就能从它的父类那里直接继承方法,也可以修改或甚至增加新的方法来体现新的独有的属性,同时新类也继承了原始类的特性,这样新类称为原始类的子类,原始类也就称为新类的父类。但是在Java中只支持单继承却不像c+一样支持多继承,继承都是是通过extends关键字来实现的,继承不但可以提高了代码的复用性,也可以提高了软件的开发效率,单继承代表着每个类只能一个直接父类,但是父类里面私有的东西,子类就不能继承了,当然如果说一个类没有显示的继承其他的一个类时候,它默认的直接父类就是object类,object就是所有类的超级父类,如果一旦一个类显示的继承了其他的一个类的时候,那么此时默认的直接父类object就会被取消,当然object也会间接的被继承,当子类对象访问实例成员的时候,首先要在子类里找,如果要是找不到再去父类找,在继承各项操作中,对于子类的对象实例化来说,子类对象在实例化之前就必须首先调用父类中的构造方法然后才能再调用自身的构造方法。封装封装的意思就是把过程和数据包装起来,封装的实现隐藏了类的内部实现机制,也就是说,外部对数据的访问只能通过已定义的界面。但是其实也就是基于一个基本概念,也就被描绘成完全封装对象的现实世界,外部通过一个被保护的接口来访问对象。然而在不影响使用者使用的前提下,外部可以改变类的内部结构,同时也保护了数据。多态性多态性是不同类的对象在面对同一内容所作出不同的反应,多态性包括参数化多态性和包含多态性,同时也具有很多优点:例如灵活、抽象、行为共享、代码共享,而且也能解决方法中的方法的同名问题。多态可以允许一个父类变量直接引用子类,它允许一个接口类型变量直接引用实现类对象。但是反过来却不行。这具体表现在方法的重载和重写。我们可以使用instance of来判断一个对象的实际类型,这个运算符用于在判断一个对象是否是我们需要指定的类型;它可以返回一个布尔类型的值,true表示匹配该类型,false表示不匹配该类型;子类可以重写父类的方法,在这之中有一些条件比如:访问修饰符需要和父类的访问修饰符相同,或者比父类访问修饰符更大;在子类重写父类的方法之后,还有在调用时优先调用子类的方法。如果子类没有该方法时,才能去调用父类的方法。Java语言是Sun微系统公司在1995年推出的,自从1995年起互联网的交互式应用发生了翻天覆地的变化。现在来看,在所有的最常用的互联网浏览器活着是软件中就一定会都包括一个Java虚拟机。更是任何几乎所有的设备操作系统中都增添了Java程序。Java作为一种编程语言,它主要被设计用于在互联网上的分布式环境。Java具有和C+语言的一样的“形式和感觉”,但是,它又要比C+语言更易于使用,而且就在编程时甚至彻底采用了一种“以对象为导向”的方式。每10年15年有一次轮回。最近的一次轮回就是从Java开始。Java作为Sun公司开发而成的新一代的面向对象的编程语言。不论你使用的是哪一种浏览器,谷歌火狐还是Safari,哪一种计算机联想惠普还是MacBook,哪一种操作系统Windows,Linux还是Mac OS,只要WWW浏览器上面有说明了“支持Java”,就可以看到生动的主页。所以它可以在各种各样不同种机器、或者不同种操作系统的网络环境中开发和使用软件。Java正在一步一步地成为Internet应用的主要开发语言。它如今彻底改变了应用软件的开发模式,带来了自计算机以来又一次技术革命,再次为迅速发展的信息世界添加了全新的活力和血液。那么准备这些环境需要怎么做呢,首先需要前往Oracle官网下载JDK 1.7,/technetwork/java/javase/downloads/index-jsp-138363.html。下载安装JDK,JRE。JDK和JRE安装完毕后在mac os中不需要配置环境变量,可以直接使用,下面安装Android Studio AS安装包分为含SDK版本和不含SDK版本下载,那么完全可以下载不含SDK版本;不过下载了含SDK版本也没事,安装时选择自定义SDK也可以,安装后重新指定SDK路径也可以,总之这个需要根据自己需求做出更改。去Android Studio中文社区官网下载你的平台需要的安装包。下载下来以后安装,Android Studio是单工程的开发模式application相当于eclipse里的workspace概念module相当于eclipse里的project概念区别还是很大的。安装完毕时候接着需要安装virtual box 和genymotion来运行安卓虚拟机就不做一一赘述了。2.1 开发工具介绍图2-3 Android Studio以前安卓的开发主要基于eclipse adt,首先需要承认eclipse无疑是Java开发的首选,它有强大的集成功能和巨大的插件拓展库,为开发者们提供了近乎完美的开发平台。但是,如今我们要开发安卓项目,当下最流行的是什么?Android Studio必定当之无愧,Android Studio 是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。2013年5月16日,在I/O大会上,谷歌推出新的Android开发环境Android Studio。这真的安卓开发者的福音,对于Android开发者来说,它完胜与eclipse,主要体现在:1. 速度更快2. UI更漂亮3. 更加智能4. 整合了Gradle构建工具5. 强大的UI编辑器6. 美整合版本控制系统图2-4 Genymotion有了这些优点,我们还有什么理由不用它呢?当然有了开发环境当然远远不够,由于我没有现成的真机,所以只能通过虚拟机来运行Android机器人,因为在Android Studio中的虚拟机真的是太不好用了,在这里我选择了大多数开发者都会选择的的Genymotion,Genymotion是一套完整的工具,它提供了Android虚拟环境。它简直就是开发者、测试人员、推销者甚至是游戏玩家的福Genymotion支持Windows、Linux和Mac OS等操作系统,当然Genymotion是需要VirtualBox虚拟机依赖的,所以它也必不可少VirtualBox 是一款开源虚拟机软件。VirtualBox号称是最强的免费虚拟机软件,它不仅具有丰富的特色,而且性能也很优异!它简单易用。综上所诉,我需要用的工具也就是 Android studio,Genymotion,VirtualBox。第3章 系统分析3.1 需求分析需求分析就是指对问题进行详细的分析,仔细思考这个的要求,其中主要包括输入的数据,要得到的结果。在做系统之前,我们必须做的就是需求分析。它主要就是确定要软件是做什么用的,它可以达到怎样的效果。在软件工程中,建立一个新的或改变一个系统时描写的系统目的、范围、定义、功能时要做的所有的工作,即为需求分析。它是软件工程中的一个关键过程。通过此需求分析,系统分析员和需求分析人员可以确定顾客的需要,并且可以分析和寻求新系统的解决方法。时下流行的微博微信朋友圈已经贯彻进我们的生活,但是在发表自己心情的时候,微博维系朋友圈又有字数限制,所以导致我们有的时候无法表达自己全部的感情,所以我开发一种可以生成一个文本截图的工具,在编辑长文本之后可以将整个长文本保存在图库存为一个长图,这样发送微博微信朋友圈的时候就可以直接以一个图片的形式发表。主要数据分为两部分,静态数据和动态数据,其中静态数据为在数据库中存放的上次打开APP之前的数据,标签。动态数据主要为用户根据自己需求添加的标题,正文,已经修改时间。在功能划分方面主要分为4个功能,欢迎模块主要实现对APP的功能简介和引导用户进入APP。main模块根据用户是否第一次进去APP可以进行判断,选择进入欢迎界面还是导航界面。列表模块主要是显示用户已经添加过的标签,在界面上显示标签列表,并且在列表中显示每一个标签的主要信息和编辑时间。编辑模块,也是本APP的核心模块,在编辑模块用户可以根据自己的需求添加自己的标签标题,添加正文,在完成了长微博的主要信息的添加之后,可以实现只对文本区域的截图,对标签的删除,修改和保存,同时可以直接调用系统中分享的APP,将截图发送分享出去,在截图上要求只截取文本区域,在截图末尾要添加创建时间或者最后修改时间,和APP的介绍,也就是添加来自滚滚截笔记。在对已存在的标签条目进行修改的时候打开已有的条目的时候需要显示上次修改时间很当前时间。经济可行性上来说,本系统又本人单独开发不需要投资,没有经济压力,所以在经济上是可行的。技术可行性上来说,本系统主要基于Android,目前的难题就是实现对文本区域内容截取可以借助于ScrollView实现,所以在技术上是可行的。功能图如图3-1所示图3-1 功能图3.2 系统目标1.实现对文本区域内容截取,去除标题栏和通知栏2.实现直接分享至微博,微信朋友圈功能3.缩小APP体积,尽可能的轻量级。第4章 系统总体设计4.1 总体设计流程图4-1 流程图如图4-1流程图所示程序的大体流程如下。第一次进入软件时有导航界面,导航界面有两个界面,体现出了人性化的设计,具有硬笔书写风格,以后每次进入软件都有欢迎界面,欢迎界面如同导航页的第一页,同样有硬笔书写风格人性化设计,1秒左右进入主界面,主界面显示所有保存的文本,显示所有文本的标题,在主界面有新建文本的选项,点进进入 之后可以进行编辑创建文本并保存为截图,如果当前界面无法容下想要写的文本将自动增加,点击截图之后自动生成长图,保存在图库中具体流程为首次进入软件后有导航界面,导航界面显示两张图片,第一张图片会显示app的名称,app的作者和app的版本号,第二张图上显示app的部分截图,还有开始使用的按钮,再以后的每次进入程序之后都会显示欢迎界面,欢迎界面也同样是一张图,一张图上会显示app的名称,app的作者和app的版本号,第一次需要点击开始使用按钮,之后每次欢迎界面之后会自动进入程序的主界面。程序的主界面,程序的主界面如同一个便签的app界面,上方显示一个list,在这个列表会显示已经添加过的一些条目,在每一个条目中都会显示条目的名称和最后修改时间,在下端会显示写标签的按钮。点击写标签的按钮后可以进入标签的编辑界面,在编辑界面上方显示四个小按钮和当前时间,在下方显示文本编辑区域,在这个区域被分成了两个小子区域,分别是标题和正文部分,标题的字体稍稍大于正文的字体,上方的四个小按钮分别是保存,删除,截图和分享,在编辑完成后可以点击保存,这个时候会检测标题和正文是否为空,如果为空则不能保存,正常情况下可以直接保存。点击删除可以将数据从数据库中删除,点击保存和删除之后程序都是返回主界面。点击截图按钮,可以直接生成截图,这里只截取编辑文本区域的内容,在文本区域的最下方还会显示上次编辑的时间和来自滚滚截笔记,这个截图会被保存在系统的图库中,在系统的图库里可以直接看到刚才所截取的内容。点击分享可以先创建截图文件在图库,然后直接调用微博或者微信,直接分享至欣微博或者朋友圈。图4-2 用例图如图4-2用例图所示所示,用户进入APP可以进行新建标签、编辑标签、删除标签以及查询所有的功能,这些功能在第五章详细设计中会一一阐明,在编辑便签功能下可以扩展出保存、删除、截图和分享的功能。基本可以通过以上关系以实现需求分析中的所有功能。4.2 数据库设计数据库我使用了Android自己的sqllite数据库,相对Oracle更轻量,相对MySQL更方便,在本APP中为了更大的轻量设计,在数据库中只建立了一个表,一张表可以实现贯穿所有模块,可以供所有模块使用。建表语句为create table notepad ( _id integer primary key autoincrement, title text, time text, content text )在notepad表中有_id integer primary key autoincrement 条目的ID唯一标示,采用integer类型自增长是表的主键;title text 条目的标题采用了text类型;time text 条目的时间采用了text类型;content text 条目的正文采用了text类型,正如表4-1所示。表4-3 notepad字段名字段类型是否可为空字段含义注释_idintegerNID主键titletextN标题timetextN类型contexttextN年第5章 详细设计与系统实现5.1 详细设计5.1.1 欢迎模块图5-1 欢迎导航界面如图5-1欢迎导航界面所示,用户第一次进入滚滚截笔记的时候会有一个欢迎导航界面,首先启动MainActivity,在MainActivity的oncreate方法中调用方法判断是否第一次进入软件,如果是第一次进入软件那么跳转至导航界面并在sqllite中建立数据表,以及插入第一条数据,也就是说明书。,导航界面显示软件的简单介绍,进入GuideActivity,进入GuideActivity之后显示两张简单介绍软件的图片,第一张图片中显示了app的名称作者以及版本号,宣传语等信息,第二张图片显示了软件的主要截图,和功能的主要展示。在图片的正下方,显示有两个小圆点,当前在第一张图的时候第一个小圆点亮,反之当第二张图片显示在界面上时,第二个小圆点亮,第一个小圆点暗。就是简单的一个导航界面。5.1.2 手势密码模块图5-2 手势密码如图5-2所示欢迎界面结束之后进入了手势密码界面,第一次进入这个界面会对手势密码进行初始化,之后可以对手势密码进行更改,在这里如果连续输入错误5次,则直接退出APP。5.1.3 main模块(欢迎模块)该模块没有界面属于欢迎模块,主要用于判断是否第一次进入界面,如果第一次进入app,则跳转至导航界面,如果不是第一次进入界面则只显示欢迎界面之后就进如主界面5.1.4 列表模块图5-3 列表界面如图5-2列表界面所示,如果在上面的欢迎界面中判断为不是第一次进入软件,或者导航界面已经结束,方可进入到文本列表界面,在这里显示已经编辑过的文本,以及最后一次更改的时间,在本模块中,自定义了adapter,实现了自定义
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年游戏开发程序员应聘面试指南及预测题
- 光电材料与器件教学课件
- 乡村教师廖老师教学课件
- 2025年电力系统运行值班员高级模拟题及解析
- 2025年特岗教师招聘面试初中生物高频考点预测
- 健全安全评价与监测体系支持企业安全管理
- 化工原理课程设计列管式换热器
- 青光眼护理查房
- 修辞手法教学课件
- 《望洞庭》教学课件
- 《儒林外史》人物基本情况及形象分析
- 中学生传染病防治知识
- 菲林格尔维修人员上门维修服务规范525
- 龋病的分类及临床表现
- 个体工商户合伙协议书律师审核起草
- 抚养费纠纷民事起诉状(10篇)
- 2025年郑州铁路职业技术学院单招职业适应性测试题库必考题
- 核安全863文化宣讲
- 学费分期付款申请书
- GB/T 23694-2024风险管理术语
- 初中班主任培训讲座课件(27p)-2024鲜版
评论
0/150
提交评论