毕业设计(论文)-基于Android的画板的设计与实现.doc_第1页
毕业设计(论文)-基于Android的画板的设计与实现.doc_第2页
毕业设计(论文)-基于Android的画板的设计与实现.doc_第3页
毕业设计(论文)-基于Android的画板的设计与实现.doc_第4页
毕业设计(论文)-基于Android的画板的设计与实现.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

太原理工大学毕业设计(论文)用纸太原理工大学毕业设计(论文)任务书全套设计加扣 3012250582毕业设计(论文)题目:基于Android的画板的设计与实现毕业设计(论文)要求及原始数据(资料):1综述国内外基于Android的画板的研究现状;2深入了解基于Android的画板的相关技术;3熟悉Android画板的开发流程以及对图形化编程能力的训练;4设计并实现Android画板的一些基本的功能;5深入分析Android画板的关键技术与编写语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。 第1页 毕业设计(论文)主要内容:1综述Android画板在人们日常生活中的应用;2了解基于Android的画板设计的相关技术;3熟悉Android画板的开发环境; 4设计Android画板的基本界面以及基本绘画功能的实现;5. 深入分析基于Android的画板设计的关键技术以及编程语言;6熟练掌握基于Android的画板的编写流程与技术;7针对Android手机上的基本画图工具的设计与实现。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 第2页 第3页主要参考文献(资料):1 曹帮琴等. Android应用中优化Bitmap使用避免内存溢出J. 河南工程学院, 20142 黄文雄. 面向Android应用的用户行为分析方法J. 软件, 2014,(12) 3 张铁红等. “画图”工具的综合运用. 哈尔滨科学技术学院J, 2008, (01)4 李冰冰,王爽等. 基于GUI的绘画板软件研究. 互联网技术J,2012, (12)5 杨晓霞. 浅谈画图小程序J. 吕梁教育学院, 2012, (6)6 喻瑗. 基于Android平台的手机界面设计. 江西工业贸易技术学院,20127 饶永生.超级画板作图效率研究D. 广州大学,20098 Nicola Jackiw. The Geometrys Sketchpad. 19959 Ulrich H.Kortenkamp. Foundations of Dynamic Geometry. 199910 Jean-Marie Laborde,Franck Bellemain. Cabri-Geometry II. 1998专业班级软件1232班学生要求设计(论文)工作起止日期2016年3月21日2016年6月24日指导教师签字日期2016年3月21日教研室主任审查签字日期系主任批准签字日期 基于android的画板的设计与实现 摘要随着科技的不断发展和社会的不断进步,手机越来越流行,成为了人们日常生活和学习的必要工具,人们越来越离不开手机,还在几年前手机仅仅是一个打电话和发短信的工具,但在地球村的今天,手机无论除了可以满足基本的通讯作用以外,还成为了人们办公和娱乐的必不可少的工具。当然手机画板也成为了手机的一个基本的app软件,以前人们想画画必须在纸上或者自己携带的画板上,对于现在人们快节奏的生活不是非常方便。而手机画板的出现打破了这个固有的僵局,它可以满足人们急性绘画的需求,方便而快捷。随着现在智能手机的不断发展,手机画板的模式也越来越多样化,不同的手机有不同的画板模式,有的是靠重力感应,只需要使用者摇晃手机即可绘画,大部分软件还是需要手或者画笔去操作。现在绝大多数手机自带的画板都是对所有人公开的,这就不满足一些对隐私要求比较高的使用者。我所设计和实现的手机画板具有登入和注册的功能,以及个人中心等基本页面,基本上可以满足人们对于隐私的要求。关键词:画板;Android;隐私 Design and implementation of android-based sketchpad AbstractWith the continuous advancement of technology and our society, mobile phones getting more and more popular, has become a necessary tool in peoples daily lives and learning. It is increasingly inseparable from the phone for many people. A few years ago, the phone was just a tool used to make a call or send text message, but in todays global village, in addition to the basic role of communication, it also has become an indispensable tool for people to work and enjoy themselves. Sketchpad, as basic app software of mobile phone, not so inconvenient to our rapid-paced life like before, now can allow people to draw in the phone instead of in the paper or drawing board carried with them. The phone Sketchpad appeared to break this inherent deadlock, it can meet the needs of people with extemporaneous desire for painting. Whats more, it is convenient and fast. Now with the continuous development of smart phones, the model of mobile phone sketchpad is also more diverse. Different phones have different sketchpad mode: some depends on gravity sensor which need the users only to shake the phone to paint; however, most soft wares still need to operate by hand or brush.Now the vast majority of mobile phone with Sketchpad is open to all, which does not satisfy some users with high privacy requirements. The mobile phone sketchpad that I designed and implemented has basic page with functions of registration and logging in as well as individual centers, which can basically meet people for the privacy requirements.Keywords: Sketchpad ; Android; privacy 目录1 绪论11.1软件发展的现状11.2手机发展的现状11.3设计的目标22 基本知识和基本原理32.1 Android的发展简介32.2 Android的系统架构32.2.1 应用程序层32.2.2 应用程序框架层32.2.3 系统运行库层42.2.4 Linux核心层42.3 开发工具42.4 Android的基本控件42.5 Java语言的简介和发展52.6 数据库63系统需求和总体设计83.1用户需求分析83.2 系统需求分析93.3可行性分析93.3.1. 经济可行性103.3.2. 技术可行性104详细设计114.1欢迎界面114.2 用户登入114.3 用户注册144.4主界面155测试30 5.1 功能正确性测试305.2 界面易用性测试305.3 兼容性测试305.4 安全性测试30结论31参考文献32致谢33外文文献34外文原文翻译43 1 绪论随着电子行业的迅速发展,手机更新换代越来越快,手机画板的形式也越来越多样化,人们快节奏的生活方式使的人们没有时间在纸上或画板上绘画,手机画板的出现满足了人们随时随地绘画的需求。但大部分手机的自带画板都是对所有人公开的,使的人们的隐私没有保障。1.1软件发展的现状随着时代的不断进步,计算机软件行业的发展非常迅速,影响着我们生活的方方面面,软件行业也越来越走向国际化和大众化,成为了我们生活办公学习娱乐的重要组成部分,没有软件的支持,我觉得现在社会就会进入瘫痪的状态,虽然有点危言耸听,但也是事实,各个方面都离不开软件。无论是发达国家还是发展中国家,政府对软件行业都非常支持,它现在也成为了综合国力的重要象征之一,是现在各个国家竞争中的重要手段,我国的软件行业从80年发展到现在,也已经初具规模,成为世界上软件行业的大国之一,由于政府的重视,软件人才和软件公司正在迅速上升。随着软件行业的发展,带动了国家经济的提升,从而也影响了人们的生活水平。由于互联网技术自身的优势,可以使人们随时随地享受上网的乐趣,既方便了人们的生活也提高了人们的生活水平。近几年来,嵌入式,无线网技术和教育软件的不断发展将让软件行业的发展推向了一个新的巅峰。我相信在不久的将来软件行业的发展会越来越好,越来越全面化,正真成为人们生活的必须品。1.2手机发展的现状手机从古至今可以所是人们生活的必需品,随着科技的不断进步,手机的更新换代也非常迅速。手机的类型也非常多样化,有折叠式,直立式,旋转式,滑盖式式等多种形式。手机也有着非常悠久的发展历史,由最初的第一代手机也就是1G手机,大家在电视屏幕或者电影屏幕中常常看见的大哥大就是第一代手机,由于当时技术的限制使得它的外形非常巨大,有的人称之为“板砖”,随着时间的推移和技术的不断发展,随之迎来了第二代手机,也就是所谓的2G手机,相比于第一代手机而言。第二代手机体积等各个方面都比较成熟,具有了相对稳定的通话质量和较长的待机时间,相比较第一代手机而言,最重要的进步就是多了彩信业务和上网的业务,以及各式各样的有JAVA语言编写的小型的程序和游戏。随之而来的就是3G时代,指的就是第三代移动通信技术,它相对与第一代和第二代手机而言由有了很大的进步,出现了无线网络技术,手机导航,手机定位等。人们能够在手机上进行各种听音乐,看视频,玩游戏,上网,总而言之,第三代手机集休闲娱乐为一身,成为了人们日常生活的重要组成部分。随着移动电话的空前发展,移动电话的使用人数的逐年上升,几乎达到人手一部手机。这样发展速度和规模都是史无前例的。正是由于手机行业的发展,使得手机市场的竞争也越来越大,手机的产品由原来单一的形式发展成为如今多元化的形式,手机厂商由最初的摩托罗拉发展到现在小米,魅族等。手机的智能话是手机发展的必然趋势,我国近几年来手机行业发展非常迅速,手机产品的出口量逐年增长,中国作为全世界手机加工的位置进一步凸显,但相对核心的技术和设备还得从国外引进,财政和金融体系结构不够完善,自主创新的能力还有待提高。但总而言之,手机的发展前景还是非常乐观的。1.3设计的目标能够满足人们日常生活的基本的绘画的需求,同时相比与其他的手机画板而言增加了用户登入和注册的功能,从而更好的满足人们隐私的要求,同时也增加了很多界面。 2 基本知识和基本原理2.1 Android的发展简介Android是由谷歌公司领导和研发的。Android由最初的Android1.5版本发展到现在Android4.3版本,随着版本的不断更新,相应的技术也逐渐完善。Android是一个以Linux系统为基础的开源的操作系统,它不仅仅局限于手机,它在其他领域也应用广泛,比如嵌入式操作系统,医疗的电子设备,监控摄像头等。Android系统随后扩展到了平板电脑,电脑等领域。2.2 Android的系统架构2.2.1 应用程序层Android的应用程序主要是用户界面方面,是应用程序开发的基础,通常都用Java语言来进行编写,其中还可以包含放置在res目录中的各种资源文件、Java程序及相关资源经过编译后,将会生成一个APK包。Android本身提供了主屏幕(Home)、电话(Phone)联系人(Contact)以及浏览器(Brower)等众多核心应用。同时应用程序的开发者还可以通过使用应用程序框架层的API来实现自己的程序。2.2.2 应用程序框架层这一层是API架构层,计算机人员可以根据这一层的相关API开发与自己相关的应用,它是由谷歌公司发布的,它的出现使得程序开发的架构设计变得更加容易,但同时还应该遵守它所对应的开发原则,它的组件非常丰富,比如View,它可以构建应用程序的视图;Content Providers,如果想在一个应用程序中访问其他应用程序的数据或者是共享本身的数据时必须通过它;Resource Manager,也就是资源管理器,它提供比如图形,布局文件等非代码资源的访问;Motification Manager,也就是通知管理器,开发人员可以通过它在手机通知栏自定义自己喜欢的提示信息;Activity Manager,它是活动管理器,也就是一个APP中所有可视化界面的大管家,通过它可以管理应用程序的生命周期;Window Manager,窗口管理器,通过它可以管理所有的窗口程序;Package Manager,包管理器,主要负责Android系统内的程序管理。2.2.3 系统运行库层开发者在使用Android相关的应用框架进行相应的开发时,为了能更好的为相应的开发人员提供帮助,Android系统会通过一些c/c+库从而来使得开发人员更好的使用相应的各个组件。在这一层上还有Dalvik虚拟机,每一个Android应用都运行在虚拟机中,虚拟机的内存分配管理,线程机制等都依赖于底层的操作系统。2.2.4 Linux核心层这一层非常重要,在Android的架构中起着至关重要的作用。Android以Linux操作系统作为内核基础,通过Linux内核的服务来实现硬件设备的驱动,网络协议栈,内存和进程的管理,无线通信,电源的管理等功能。2.3 开发工具Eclipse简介:它是由IBM公司开发的IDE开发环境,也就是集成开发环境。它主要通过插件组件来构建开发环境,但是它本身自带一个非常标准的插件集,里面包括JAVA Development Tools和JDT。它最初主要是用来做java语言的开发的,但随着时代的发展和科技水平的进步,可以通过其他相应的插件进行C+等的开发工具。与其他的集成开发环境相比,Eclipse具有其他集成开发环境不具备的灵活性和可操作的特性,这也就是许多开发者钟情于它的原因。Eclipse同时也是一个开放源代码的软件开发项目。2.4 Android的基本控件Android的四大组件:Activity: 它是Android应用程序与用户之间交互的窗口,是Andorid四大组件的最基本的一种,它需要为保持各界面的状态做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑。Service: 后台服务于Activity,接收上层的指令,封装有一个完整的功能逻辑的实现,它的启动模式主要有俩种,第一种就是startService,是由其他组件调用startService()方法启动的,服务停止的时候需要调用stopService()方法停止;第二种就是通过bindService()方法启动服务,它将调用者和服务绑定在了一起,调用者一旦退出,那么调用者相对应的服务也就随之终止,有同生共死的感觉。Content Provider: 如果想在一个应用程序中访问其他应用程序的数据或者是共享本身的数据时必须通过它,其他程序可以通过ContentResolver类从该内容提供者中获取或者是存入相应的数据。在一个应用程序中不需要内容提供者,只有在多个应用程序之间共享数据的时候才需要ContentProvider。大多数开发人员都是通过ContentResolver对象实现对ContentProvider的操作。Broadcast Receiver: 广播接收器与Activity最主要的区别就是广播接收器没有图形化的界面,它主要接受一种或者多种的Intent做触发事件,接收相关的消息,做一些简单的处理,从而转化成一条Notification来通知用户。注册广播接收者的方法有俩种,一种是在应用程序中动态的进行注册,还有一种就是在AndroidManifest文件中进行静态注册。它们俩种方式也有区别,在代码中动态注册,当用来注册的activity关闭后,相应的广播也就随着失效,而在AndroidManifest文件中静态注册的广播接收器无需考虑Activity是否关闭,只要设备处于开启状态,那么广播接收器也就处于开启状态。2.5 Java语言的简介和发展Android开发的基本语言就是Java语言。Java语言是由Sun Microsystems公司在95年5月推出的Java程序设计语言和Java平台的总称。Java语言具有很强的跨平台操作性和可移植性。它是相继在C语言 ,C+语言之后产生的,但是为什么它这么火,这么受广大程序开发者的青睐呢? 原因很简单,他具有很多C语言等其他计算机语言所不具备的特点和优点。其中最主要的一个优点就是它非常非常的简单与其他语言相比较。它的简单的特性主要体现在以下3个方面:首先呢,就是在Java语言产生之前计算机程序员主要使用的开发语言就是C语言和C+语言,而Java语言恰恰又是C语言和C+语言的一个变种,所以对于之前使用C语言和C+语言开发程序的程序员来说使用Java语言就是很轻松的一件事情。其次,Java语言之所以简单就是因为它舍弃了很多C+中容易引发程序发生错误的地方,比如操作比较繁琐的指针和内存管理。还有一个很重要的原因就是Java为程序开发者提供了非常丰富的类库。 Java语言还有一个很重要的特点就是面向对象,这是很多语言所不具备的,它与很多面向过程的程序设计技术不同,它具有继承,封装,多态等特点。非常看重代码的继承和重用,这样可以加快程序员的开发效率。 Java语言之所以这么受人欢迎还有一个很重要的原因就是它的分布式,Java应用程序可以使用URL打开而且访问网络上的资源和对象,访问方式也非常简单,一般来说访问Internet提供的内容一直以来都是在程序开发过程中令很多程序员很烦的一件事情,而Java的语言特性为很多程序开发人员解决了一件令人棘手的事情。Java语言同样是一种非常安全的语言,具有极强的安全特性,可以从以下俩个方面来看出Java语言的安全的特性,第一个方面就是它舍弃了指针和释放内存等功能,从而避免了很多非法的操作。第二个方面就是,使用Java语言来创建浏览器的时候也非常安全。Java语言还有一个很重要的特性就是它的可移植性,由于Java语言中的JVM技术,它使得Java语言可以达到编译一次,处处运行的效果。就凭这一点Java语言如今这么流行一点也不奇怪。2.6 数据库无论是在什么程序或者系统开发的过程中,都要用到数据库,这是必不可少的一个关键步骤。顾名思义,数据库就是设计来为我们存储数据的容器,数据库一门很重要的学科。数据库很庞大,数据库类型主要分为关系型数据库,面向对象数据库,数状数据库以及网状数据库,我们比较熟悉的数据库有Oracle数据库,MySQL数据库还有SQLite数据库。在Android中主要的存储方式有以下几种:使用SharedPreferences存储数据。使用SharedPreferences存储数据首先说明SharedPreferences的存储方式,它是Android系统提供给我们用来存储一些相对来说比较简单的配置信息的一种机制,它采用Map数据结构来进行存储,每一个Kay对于相应的Value,它可以用来存储比如登入名,登入密码等用户的基本简单的信息。但是需要注意的一点就是数据读取和数据写入的方法,SharedPreferences本身没有写数据的能力,使用时要先实例化Editer对象,调用edit()方法使其处于可编辑的状态,最后完成时记得调用commit()方法进行提交修改的数据。文件存储数据。使用文件存储数据是一种比较常用的数据存储的方式,通过openFileInput()和openFileOutput()方法来读取设备上的文件。SQLite数据库存储数据。SQLite数据库首先作为开源的嵌入式数据库产品的一种,它具有别的数据库所没有的优势。首先SQLite数据库系统开销非常小,而且它的检索效率也非常的高。它不用独立的运行的数据库的引擎,它主要是由程序直接调用相应的API去实现对数据的增删改查的操作。它与其他数据库产品的区别就在于它是由程序驱动的,而其他的数据库产品是引擎响应的。它还有一个非常重要的特点就是它的体积非常非常小,同时,它的性能也比其他数据库更占优势。使用ContentProvider存储数据。如果你想要在不同的应用程序之间共享数据则需要使用ContentProvider,它是以表的形式来组织数据的,ContentProvider同样提供增删改查的方法。网络存储数据。Android所提供的通过网络从而实现数据的存储和获取,需要我们通过调用WebService返回的数据或者是通过解析Http协议从而来实现网络数据的交互。 3系统需求和总体设计3.1用户需求分析随着近几年来科技的不断创新和社会的不断进步,智能手机这一行业也发展的欣欣向荣,使人们的生活确确实实是便利了很多,手机功能的不断完善,使得原本不可能在手机上完成的事情可以在手机上完成,就拿最简单的画画来说吧。但你走到一处非常美丽的风景处时,此时此刻忽然想画一幅画,那么谁来帮你完成呢?不可能是真实的比较大的画板吧? 那么手机画板此时就体现出它的作用了。方便快捷,不用随时随地携带体积大而重的画板。根据近几年来调查报告,我发现人们使用手机画板的次数越来越多,手机画板的出现可以说极大的方便了人们的生活。在你心情好的时候可以拿出手机打开手机画板,画出自己美丽的心情,可以将此时此刻的情景用画的形式记录下来,闲暇时光看一看也是很不错一件事情。当然在你心情非常不美丽的时候也可以拿出手机,打开手机画板,将自己的不美好的情绪全部发泄在手机画板上,想画什么就画什么,此时画板就成为了陪你度过不美好时光的忠实伙伴。虽然人们使用的画板的次数越来越多,但大部分手机上自带的或者是在APP商城下载的画板APP,它们都不是针对个人的,每个拿到你手机的人都可以随时随地打开画板,从而使得那些对隐私看的很重要的人觉得很没有安全感,于是我针对人们的这一想法,设计和实现了具有登入界面和注册界面的手机画板APP,从而满足人们对于隐私这一需求。第一次登入的用户可以点击注册按钮跳转到注册界面,在注册界面注册完毕之后会自动跳转到登入界面,用户可以使用刚刚注册的账号进行登入,输入正确的账号和密码点击登入按钮会自动跳转至App的主页面,你可以在主页面里查看自己以往的所绘制的画,也可以创建新的画,但你想退出的时候,可以在个人中心的界面点击退出登录按钮进行退出,这样可以保证别人在拿到手机的时候看不到你自己所绘制的图形。3.2 系统需求分析我所设计和实现的手机私人画板既要满足人们对于简单绘画的需求,还要满足人们对于隐私的要求。通过网上查资料和调查,需要满足以下的系统要求:首先要求非常漂亮的界面,随着手机应用的广泛普及,人们评价一个软件的好坏,不仅仅看其功能的实用性,很大一部分是看是不是漂亮的UI界面,能不能在用户使用的同时给用户带去良好的用户体验和因为其美观性带来的愉悦感,所以说没有美观的用户界面,即使你的功能再完善,运行在流畅都不会得到用户的垂青,界面设计占APP设计时非常重要的地位。由于涉及到了用户的个人信息,所以就要求系统具有良好的安全特性和系统结构。现在的手机在给用户带去方便的同时,也存在非常大的安全隐患,使得用户的个人信息和隐私没有足够的保障,这是非常可怕的。要求系统逻辑结构一定要清晰明确,操作的流畅性要高。想必大家也体验过很多中操作不流畅的App软件,给人们的体验性极差,造成这种的原因一方面是用户自身所使用手机的版本和硬件的问题,还有一个重要的原因就是系统的逻辑有问题,代码编写有逻辑错误等等。所以这就要求代码的编写和逻辑一定要流畅。3.3可行性分析为什么要进行可行性研究?什么是可行性研究?可行性研究是在进行项目投资之前非常重要和有意义的一项工作,这样可以使得自己在投资中少损失一点经济,少走一些弯路,是在决定投资之前,对所将要进行的项目进行比较全面的综合的分析,在此基础之上,比较全面的分析项目建设的必要性,是否盈利,经济上是否合理,技术上能否可行,是否具有建设性的意义,从而在项目投资上可以全面掌握局势。意义(1)可行性研究是可持续发展,建设节约型社会的必行之事;(2)可行性研究是在进行项目开始和编写计划书的非常重要的依据;(3)可行性研究是项目筹集资产的重要凭据;(4)可行性研究是公司签订协议和合同的重要凭据;(5)可行性研究是在项目进行施工、设计、购置设备的重要凭据;(6)可行性研究是向本地的政府、规划相关部门和环境有关部门申请有关建设许 可文件的重要凭据;(7)可行性研究是国家政府等有关的综合部门对固定资产投资进行调控管理和编制发展计划的重要凭据;(8)可行性研究是项目考核和后评估的重要依据。可行性分析包括哪几方面的内容呢?可行性分析包括技术可行性分析,时间可行性分析,组织可行性分析还有经济可行性分析。技术可行性是指判断系统在当前技术水平的前提条件下能否实现。时间可行性是指判断系统能否在规定的时间内完成。组织可行性是指研究的系统能否成功的实现。经济可行性是指首先了解系统开发所需要的资金,还有应该可以获得的效益,从而判断系统能否在规定的时间内收回投资的成本,判断系统运行后的效益是否比给系统投资的成本高。所以说可行性分析在系统或者项目开始之间都必须要做的一件事情。3.3.1. 经济可行性随着手机的不断流行,现在基本上人手一部手机,人们想要绘制简单的图形不需要购买画笔和画板,可以直接拿出手机打开手机画板应用随时随地绘制自己想要的图形,又方便又经济。3.3.2. 技术可行性随着科技的不断发张和进步,手机相关的技术和功能不断完善,我所设计和实现的软件不需要网络的支持,随时随地都可以拿出手机打开手机画板APP绘制自己想要的图形。本系统是基于Android系统设计和完成的,使用Android系统本身自带的API, 使用SQLite数据库进行存储,在技术上也是非常可行的。所以我所设计和实现的基于Android的私人画板无论实在经济可行性还是技术可行性上都是非常可行的,具有很强的研究性和开发性。 4详细设计4.1欢迎界面欢迎界面也很重要,在每次使用一个App的时候第一眼进入人们的眼球的就是欢迎界面,在APP中起着很重要的作用。当然我所设计和实现的画板APP也有欢迎界面,虽然比较简单。具体的界面如图4-1: 图4-1 欢迎界面4.2 用户登入当一个注册过的用户想要操作本系统是需要先进行登入,在登入界面输入自己的账户和密码,当账户和密码都输入正确的前提下才能进行往下的操作,当你的用户名称不存在或者相应的密码不正确时会弹出相应的提示信息。只有全部输入正确时才可以点击登入按钮进行登入操作。具体的界面如图4-2所示: 图4.2 登录界面登录界面主要代码如下:public void initData() name = et_username.getText().toString();pwd = et_password.getText().toString();if ().equals(name) mPromptMessage.ErrorPrompt(请输入用户名,1);return; else if ().equals(pwd) mPromptMessage.ErrorPrompt(请输入密码,1);return;String str = null;Cursor cursor = dao.select(sqliteDatabase, name);if (cursor.moveToNext() str = cursor.getString(0);if (str.equals(pwd) if (cb.isChecked() editor.putString(Name, name).commit();editor.putString(Password, pwd).commit();editor.putBoolean(Check, true).commit(); editor.putString(Name, name).commit();Dengru(); else mPromptMessage.ErrorPrompt(密码不正确,1);et_password.setText(); else mPromptMessage.ErrorPrompt(用户不存在,1);et_password.setText();et_username.setText();private void Dengru() mPromptMessage.LoadingPrompt(false, 正在登入);new Thread()public void run() SystemClock.sleep(1500);handler.sendEmptyMessage(0);.start();private Handler handler = new Handler()public void handleMessage(android.os.Message msg) mPromptMessage.CloseLoadingRelativeLayout();switch (msg.what) case 0:Intentintent1=new Intent(DengRuActivity.this,MainActivity.class);startActivity(intent1);break;4.3 用户注册未注册过的用户在登入之前需要先进行注册,注册成功后会自动跳转至登入界面,如图4-2 所示。 图4-3 注册界面注册界面主要代码块:case 10:final String phone = et_phone.getText().toString();final String pwd = et_password.getText().toString();String sure_pwd = et_surepass.getText().toString();if(phone.equals() | phone.length()!=6)mPromptMessage.ErrorPrompt(账号长度为必须为6位,1);return;if(pwd.equals() | pwd.length()6)mPromptMessage.ErrorPrompt(密码不得小于6位,1);return;if(!pwd.equals(sure_pwd)mPromptMessage.ErrorPrompt(俩次密码不一致,1);return;Cursor cursor = dao.select(sqliteDatabase, phone);if(cursor.moveToNext()mPromptMessage.ErrorPrompt(用户名已存在!,1);elsedao.insert(sqliteDatabase, phone, pwd);Zhuce();break;4.4主界面主界面下面有3个按钮,分别是我的画廊,新建绘画和个人中心,每个界面都有相应的作用,我的画廊保存你所作的画,新建绘画界面你可以绘制图像,个人中心界面你可以退出登入等。如图4-4,4-5,4-6,4-7所示。 图4-4 新建画廊下面为我的画廊界面,这个界面又分为俩种,当用户第一次登入的时候为图4-5所示,当用户在登入之后进入到新建画廊界面新建图形并且保存后在点击我的画廊时候如图4-6所示。 图4-5我的画廊界面(无) 图4-6我的画廊界面(有)主页面的主要代码:protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);initView();initEvent();private void initEvent() ly_hualang.setOnClickListener(this);ly_xinjian.setOnClickListener(this);ly_wode.setOnClickListener(this);private void initView() /注册广播IntentFilter intentFilter = new IntentFilter();intentFilter.addAction(action.reset);registerReceiver(mRefreshBroadcastReceiver, intentFilter);fragmentManager = getSupportFragmentManager();ly_hualang = (LinearLayout) findViewById(R.id.ly_main_hualang);ly_xinjian = (LinearLayout) findViewById(R.id.ly_main_ganji);ly_wode = (LinearLayout) findViewById(R.id.ly_main_wode);iv_hualang = (ImageView) findViewById(R.id.iv_main_hualang);iv_xinjian = (ImageView) findViewById(R.id.iv_main_xinjian);iv_wode = (ImageView) findViewById(R.id.iv_main_wode);tv_hualang= (TextView) findViewById(R.id.tv_main_hualang);tv_xinjian = (TextView) findViewById(R.id.tv_main_xinjian);tv_wode = (TextView) findViewById(R.id.tv_main_wode);select(0);/广播接收器private BroadcastReceiver mRefreshBroadcastReceiver = new BroadcastReceiver() public void onReceive(Context context, Intent intent) String action=intent.getAction();if(action.equals(action.reset)select(1);/销毁广播public void onDestroy() super.onDestroy();unregisterReceiver(mRefreshBroadcastReceiver);private void select(int i) change(i);private void change(int i) FragmentTransaction fragmentTransaction =fragmentManager.beginTransaction();remove(fragmentTransaction);reset();switch (i) case 0:iv_hualang.setImageResource(R.drawable.tab_shouye_h);tv_hualang.setTextColor(Color.rgb(74,156,214);mHuaLangFragment = new HuaLangFragment();fragmentTransaction.add(R.id.content,mHuaLangFragment);break;case 1:iv_xinjian.setImageResource(R.drawable.tab_cangku_h);tv_xinjian.setTextColor(Color.rgb(74,156,214);mXinJianFragment = new XinJianFragment();fragmentTransaction.add(R.id.content,mXinJianFragment);break;case 2:iv_wode.setImageResource(R.drawable.tab_wo_h);tv_wode.setTextColor(Color.rgb(74,156,214);mWoDeFragment = new WoDeFragment();fragmentTransaction.add(R.id.content,mWoDeFragment);break;fragmentTmit();/点击事件public void onClick(View v) switch (v.getId() ca

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论