基于android的公司员工考勤系统的设计与实现论文_第1页
基于android的公司员工考勤系统的设计与实现论文_第2页
基于android的公司员工考勤系统的设计与实现论文_第3页
基于android的公司员工考勤系统的设计与实现论文_第4页
基于android的公司员工考勤系统的设计与实现论文_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

1、职场大变样社区( zcdby ):下载毕业设计成品全套资料,全部50元以下毕业设计(论文)任务书第1页毕业设计(论文)题目:基于android的公司员工考勤系统的设计与实现毕业设计(论文)要求及原始数据(资料):1描述企业公司对使用员工考勤软件系统的一些现状;2进一步了解实现各种员工考勤系统的专业技术;3熟练掌握员工考勤系统的应用与分析,训练编写Android程序的能力;4设计并实现员工考勤系统中某一类型的具体功能;5深入分析现代员工考勤系统的关键技术与编程语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。 第2页毕业设计(论文)主要内容:1综述各大企业对员工考

2、勤系统的应用;2了解实现各种员工考勤系统的相关技术;3熟悉基于android的公司员工考勤系统的eclipse开发环境; 4设计与分析员工考勤系统的数据模型和开发模型;5. 深入分析员工考勤系统的关键技术与编写语言的设计流程;6熟练掌握基于android的公司员工考勤系统的java和android的编程;7设计与实现基于android的公司员工考勤系统的基本功能的程序。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 第3页主要参考文献(资料):1 牛玉霞. 基于Android平台软件开

3、发方法的探究J. 电子制作, 2013(22).2 马志强. 基于Android平台即时通信系统的设计与实现D. 北京交通大学, 2009.3 李永远. JAVA虚拟机相关技术研究与实践J. 信息通信, 2015(5):120-120.4 陈敏. 基于XML和Java的异构数据库集成的应用研究D. 武汉理工大学, 2006.5 杨金花. JSP技术中文乱码的原因及解决方法J. 电子设计工程, 2011, 19(01):25-28.6 刘媛春, 罗云翔. 基于JSP的动态网页技术J. 成都信息工程学院学报, 2005, 20(4):398-401.7 卢方亚. Oracle数据库软件产品的战略研

4、究与分析D. 西南交通大学, 2007.8 Lantzos T, Koykoyris G, Salampasis M. FarmManager: An Android Application for the Management of Small FarmsJ. Procedia Technology, 2013, 8(3):587592.9 Reynolds M C. Modeling the Java Bytecode VerifierJ. Science of Computer Programming, 2013, 78(3):327342.10 Moonsamy V, Rong J,

5、Liu S. Mining permission patterns for contrasting clean and malicious android applicationsJ. Future Generation Computer Systems, 2014, 36(3):122-132.专业班级学生要求设计(论文)工作起止日期指导教师签字日期教研室主任审查签字日期系主任批准签字日期基于android的公司员工考勤系统的设计与实现摘 要随着各种不同系统、不同型号的智能手机等设备的普遍生产,它们已经深深的渗透到了我们每一个人的生活当中。工作中的成人就不说了,连上学中的孩子,最差的也是每个

6、人拥有自己的一部智能手机,好一点的还会有ipad等高端设备。如今我们获得与修改存储信息的设备已经发生了翻天覆地的变化,从纸质文字变成了数字化代码。智能设备正在一步步融入到人们的生活当中,并且不断影响和改变着人们的生活方式。因为如今各种各样的智能设备的应用,使我们在生活、工作以及教育等各个行业使用数据信息方面变得越来越简单,方便,进一步提高了我们的工作效率和生活节奏。所以,智能设备的应用服务在以后会有一个很好的前景和发展空间,基于android的公司员工考勤系统就是其中一个很好的例子。在公司和学校的台式电脑上各种考勤管理系统已经很多了,它们已经开始从固定的客户终端向移动设备的终端方向转变。移动终

7、端设备不仅使我们携带方便,在使用方面也不亚于固定的台式电脑。因此,开发基于android的公司员工考勤系统,可以让我们更方便的管理员工信息、处理员工的出勤信息并且可以进行定期的考勤统计。所以,此文研究了如何设计一个基于Android的公司员工考勤管理系统,该系统使用Eclipse开发工具来实现,并且涉及到Java,xml,SQLite等各方面的技术,最终才能完成公司员工考勤系统中对员工信息的增、删、改、查的功能。公司员工考勤系统要能够在安卓智能手机上可以运行,该软件的特点和新颖的地方在于突破了从前的电脑考勤方式,使管理人员能够用移动智能设备来完成对公司员工考勤的处理。关键词:智能设备;Andr

8、oid;公司员工考勤Design and Implementation of the android system based on the company employee attendanceABSTRACT With a variety of different systems, different models of smart phones and other devices of universal production, they have been deeply penetrated into the lives of each of us. Working adults do

9、 not say, even school children, basically a smart phone, and even a tablet PC. Today, we have access to the storage of information and modify the device has changed dramatically, from paper text into a digital code. Intelligent devices are being integrated into people's lives step by step, and c

10、ontinue to influence and change people's way of life. Because nowadays all kinds of smart device application, enable us to in the life, work and education, and other industries use data information becomes more and more simple, convenient, further improve the efficiency of our work and life rhyt

11、hm. Therefore, the application of intelligent equipment service in the future will have a good prospect and development space, the Android company employee attendance system which is a very good example based on.In company and school attendance management system on the desktop computer has a lot, th

12、ey have already started to change the terminal direction from the client terminal fixed to mobile devices. The mobile terminal equipment not only makes us easy to carry, in the use of more or less fixed desktop computer. Therefore, the development of employee attendance system based Android, so that

13、 we can more easily manage employee information, employee attendance information and regular attendance statistics. So this paper studied how to design a Android company employee attendance management system based on. The system use eclipse development tools to achieve, and related to Java, XML, SQL

14、ite, completed the employees personal information management, employee attendance information management and attendance checking function achieve. Staff appraisal system to be able to can be run on the Android smart phone, the software features and innovative place is breaks through the former compu

15、ter attendance mode, and allows managers to mobile equipment to complete the processing of staff attendance.Key words: Intelligent equipment; Android; company staff attendance目 录1 绪论11.1 选题背景11.2 研究现状21.3 研究意义31.4 研究内容32 相关的理论和技术42.1 JAVA技术与安卓介绍42.2 Android的开发52.3 Android常用的列表组件52.4 Android所需知识的理解82

16、.4.1 自定义控件82.4.2 进一步说明103 系统分析123.1系统可行性分析123.1.1 技术的可行性123.1.2 操作可行性123.1.3 经济可行性123.2 需求分析及其重要性133.3 总体需求153.4 功能需求153.5 开发运行环境需求163.6 性能需求173.7 数据流图184 系统总体设计204.1 概述204.2 设计原则204.3 系统功能结构图214.4 ER图设计224.5 数据库表设计225 系统的实现245.1 软件界面设计与实现245.1.1 操作主界面255.1.2 员工信息管理界面255.1.3 考勤管理界面265.1.4 考勤记录界面265.

17、1.5 员工信息修改界面275.2 员工信息管理275.3 考勤管理295.4 考勤统计326 系统的测试376.1 测试方案设计376.1.1 测试策略376.1.2 测试方法386.1.3 测试安排386.2 测试用例构建386.2.1 测试用例编写约定386.2.2 测试用例设计39总 结40参考文献42致 谢43外文文献44中文翻译501 绪论1.1 选题背景自从21世纪的钟声敲响后,大城市中的工作节奏早已非同往昔,如今社会的考勤要求越来越严格,公司对员工的管理也变得越来越完善了。但是由于公司对员工的工作情况要求越来越高,考勤管理越来愈复杂和繁琐。如果已有的考勤管理水平不够严谨,仍然使

18、用传统人工的方式管理查询方法信息,虽然这种的方法更加保险,更加的万无一失,但是,古老的方法往往都会有一定的缺陷,例如,消耗人力又浪费时间,出现了事倍功半的效果,又是甚至因为个人的原因,导致数据的丢失和泄露。这些问题往往随着时间的流逝,表现的就会越来越明显,更加的严重,这就需要我们去变革,去维新,随着社会信息科技的快速发展和大数据时代的来临,曾经让人们感到复杂繁琐的工作,被越来越多的电子设备所替代了。因为近年来智能手机市场发展迅猛,硬件方面也在不断更新,并且它的发展常常还带有一定的革命性!计算机技术的快速的朝前发展,往往都是由硬件技术方面的变革所推动的,当然智能手机的突飞猛进也离不开硬件的变革,

19、它的高度集成化和微型化正是成就智能手机在性能方面能达到用户要求的主要因素。 正是因为智能手机在性能发面的不断进步,高性能的硬件配置,才让手机如同微型电脑一样智能化、安装操作系统, 并且功能方面一点也不亚于电脑,受到了广大用户的青睐。因为从前最普通的诺基亚通信手机,也只能打个 ,发个短信。然而如今智能化的手机不仅完善了之前手机的各种功能,还使它变得如同一台多媒体的电脑,能够看视频,听音乐,甚至办公软件的运行和操作都已经不再是虚言。因此用智能手机办公将成为一种时尚,一种潮流。 如今,公司员工的工作大都变得智能化,时间也不再那么固定,地域也变得越来越广,公司对他们的管理难度也变得复杂起来。如何能更好

20、的优化对员工日常工作的管理,也成为了一个大家比较关注的话题。每个公司都有自己的一套考勤管理系统,公司需要通过他来展现出员工们的工作态度和基本素质。所以考勤系统是一个公司很重要的部分。那么,如果能在如今流行的智能手机上实现员工考勤这一功能,它将在很大程度上减轻公司的负担。但是,现在的市场中智能手机的操作系统不止一种,现在比较流行的如下:用户量最多的是谷歌的Android操作系统。纯利润和净收入最高的是苹果的IOS操作系统。还有一定升值空间的是微软的Windows mobile操作系统等。经过进一步的筛选,由于Android操作系统拥有开放的源代码,市场所占比例也是最大的,所以它有着良好的发展前景

21、。Android操作系统,是谷歌在2007年开始公布的一种开放式源代码的智能手机端操作系统,并且在之后不断的进行该系统的更新和优化,如今市场上最新的android系统为android 6.0;正是由于它的开放性,使不同开发者集思广益,各种各样的新技术在这里涌现,安卓智能手机的形式也多种多样,人们可以根据自己的喜好选择不同的安卓智能手机。而此次员工考勤系统就是基于android系统来实现的。1.2 研究现状那么,在智能手机上能否运行自己开发出来的一款考勤软件呢,答案当然是可以的。如今这样的办公软件已经多见不怪了,人们根据自己的喜好来选择不同的办公软件使用。凭借着智能手机平台,往往能够有事半功倍的

22、效果。不仅使人们出行时增加娱乐而没有负担,使用起来还很简单,不浪费时间,而且功能还很强大。Android这个单词原来的意思就是指“机器人”的,而谷歌在2007年11月5日第一次发布该操作系统是基于Linux上的开放操作系统时,便以此来命名。于是android操作系统便诞生了。该操作系统以Linux为底层,再加上众多的中间件,最后由一个完整的用户界面和预装的一些软件来实现智能手机的基本功能等一起组成的。 图1-1安卓框架以此看来,在未来移动领域的发展中,android操作系统将扮演一个非常重要的角色,随着它不断的更新和发展,对该系统的了解和研究是非常有必要的,不仅可以掌握未来移动平台的发展趋势,

23、同时还可以更好的掌握软件开发技能。编写出适应社会,符合大众要求的应用开发。1.3 研究意义如今大多数系统,缺少在移动平台上的开发,明显不能够满足目前大多数使用移动设备的大众的生活方式了。随着硬件设备,无线设备等各种电子设备的蓬勃发展,使得用户对智能手机上的功能需求更加丰富。再加上android手机系统的不断更新和发展,更是让智能手机拥有了大屏核触屏的高级功能。除了一些大型软件要求比较高以外,在日常生活中的一些应用的功能,如视频,音频,办公,娱乐等都已经能够在智能手机上实现了,有些功能可以代替甚至是比PC机更加完美。另外,再加上安卓是一个相对开放的技术,使得开发者在技术上更加方便的将PC机上的应

24、用软件在移动设备上同样适用。所以在PC机上通用的考勤功能,同样能够在移动设备上开发并且运行成功。此次的研究就是如何设计一款拥有公司员工考勤功能的android软件客户端,另外还有简洁美观的界面,独立同步的信息数据库,简单方便的操作方式。最重要的是能够更加直观的反应出员工的工作态度和个人基本素养。公司员工考勤系统是通过网上对考勤软件和社会中公司的了解,根据自己掌握开发软件知识的能力,开发出一款基于android的软件。预计基本能够完成以下几点功能:首先是完善员工的信息管理系统;其次是实现管理员对员工的考勤功能;最后是显示出考勤记录,直观的反应出员工的工作态度和个人基本素养。1.4 研究内容本次研

25、究课题是要求设计出安卓手机公司员工考勤管理系统。通过需求分析设计出的公司员工考勤管理系统,一些工作主要有:(1)首先掌握开发软件的相关技术知识,所需的开发工具以及环境配置(2)通过调查,熟悉业务流程,书写与之相关的需求分析和总体设计(3)根据需求分析,设计出对应的功能模块(4)设计出相关的模型图(5)正式开始软件代码的开发(6)对开发软件进行测试和修改。2 相关的理论和技术2.1 JAVA技术与安卓介绍Java语言,作为拥有着跨越平台、面向对象的、泛型编程的特性的计算机的一种编程语言。首先,它可以将源代码,也就是java文件,编译成字节码,每一种系统平台上又有着各自对应的虚拟机,然后通过不同平

26、台上的虚拟机来对字节码进行解释并且执行,因此代码的“一次编写,到处执行”的跨越平台的特点就可以实现了。Java 编程语言和C 、C+ 等编程语言的方式、风格十分相似。Java作为一种纯粹的面向对象的编程语言,它不仅继承了 C+ 编程语言在面向对象技术方面的核心内容,而且对于C+ 编程语言中极易发生错误的地方,用以引用,operator overloading和接口等特性进行取而代之。 另外还新增了一种叫做垃圾回收器的功能,是用于回收掉那些不再使用的内存空间(不会再被引用的对象的内存空间),这样不仅节省了空间,还减少了程序开发者对内存空间不必要的担忧。 如今java se的版本已经更新到了1.8

27、版本,与之前的版本相比,又增加了一些新的特性,例如:新加的泛型特性,用来限制集合的存储对象;还有枚举,对一些固定的举例更加方便;还有不定常参数,可以减少对方法的重载;还有八种基本类型对应的包装类,已经可以自动装箱和自动拆箱了,减少了很多不必要的麻烦。这些特性虽然给开发者带来了方便,但是给编译运行带来了一定的麻烦,与之前相比所用时间变多了,所以当该程序编写的软件项目在使用过程中就会耗费很多的时间。当然,考虑到这些,新版本发布之后,对java程序的运行速度有一定的提升。和传统的编程语言不一样,在sun公司发布了java语言之后,就把它当成了一种开放的编程语言。同时,世界上所有用java语言来开发软

28、件的公司,都被要求他们所开发出来的软件,必须能够相互的兼容。有这么一句话:java 语言靠的是大家的力量,而不是公司的力量。这也是行业中大多数企业公司所公认的。然而,微软公司和苹果公司却与之不同。它们提倡的是更注重精英人才,所用的开发语言也是相对封闭的。所以相较而言,java编程语言的开发平台还是非常受大众所欢迎的。2.2 Android的开发首先,我们先介绍一下安卓项目开发时,用到的最直接的开发工具或者是插件。众所周知,安卓是由谷歌公司研发出来的一项软件技术平台,既然如此,谷歌公司为了便于这项技术的不断发展和推广,自然就会对这项开发技术保驾护航,于是就有了大家开发安卓项目时,用起来十分方便的

29、相关的API文件,这完全归功于安卓的软件开发工具包Android SDK。它为所有的安卓程序开发者提供了方便。当然,安卓程序的开发,虽然涉及到xml文档等其他技术,但说到底还是用java语言写出来的,所以在安卓项目的开发工具中,肯定少不了最常用,也是最好用的IDE工具- -Eclipse;它强大的开发功能也是妇孺皆知的,我就不多说了,但要是在Eclipse中开发安卓项目,那么有一样Eclipse插件是必不可少的,那就是Android Development Tools,专门为安卓项目量身定做的完美的开发环境,这又是谷歌公司的一大杰作。2.3 Android常用的列表组件列表(ListView)

30、虽然是显示组件,但是它并不携带任何数据,是存放并显示其他控件的容器。因此我们的数据要从外部放到ListView里面来,下面有两种方法:1. 容器常用的属性:<ListView android:id="+id/lv" android:layout_width="match_parent" android:layout_height="wrap_content" android:divider="#dgergarh" android:dividerHeight="1dp" ></L

31、istView> <!- divider:为listView设置分割线颜色-> <!- dividerHeight:为listView设置分割线高度->2.方法一:添加属性android:entries="文件名/标签名"。如下:android:entries="array/books"这里的文件名是指:在values文件夹中创建一个Android xml文件。而标签名是指:在该文件的<resources>根标签下面写string数组标签<string-array>,并给name属性赋值。并在该标签下

32、添加列表项标签<item>。如下:<resources> <string-array name="books"> <item >Core java</item> <item >XML</item> <item >HTML/CSS</item> <item >Android</item> </string-array></resources>然后可以为其添加setOnItemClickListener(OnItemClic

33、kListener)事件和setOnItemLongClickListener(OnItemLongClickListener)事件。 总结:使用数组创建ListView十分简单。但这种方式能定制的内容很少,数据不灵活。 甚至连每个列表项的字号大小,颜色都不能改变。如果想对ListView的外观,行为进行定制,需要把ListView作为AdapterView使用,通过Adapter控制每项的外观和行为。3.方法二:把ListView需要的数据及其格式关联到一个Adapter适配器上,再把这个适配器和ListView绑定在一块。具体步骤:获取绑定ListView对象;声明创建一个Adapter(

34、适配器)(为ListView创建携带数据和格式的适配器),创建时需要三个参数,第一个是:context上下文环境。第二个是:指定ListView里面每一个item的布局文件(这些文件可以自定义放在layout文件夹中,也可以用android自带的布局文件)。第三个是:指定数据来源。例如:数组,集合等来存放列表项的数据。最后通过ListView对象的方法setAdapter(adapter);把适配器对象设置个ListView对象即可。例如:只是拿最简单的适配器ArrayAdapter来举例。private ListView lv;private String names="周杰伦&q

35、uot;,"TF-Boys","张国锋","林俊杰"listview=(ListView)findViewById(R.id. listview);/将适配器设置给ListViewlv.setAdapter(adapter);总结:这种方式能够指定灵活的数据,但是界面比较单一,每个列表项都是TextView组件。也可以自定义布局文件,并且提供一个TextView组件。4.在做一个比较复杂的ListView用SimpleAdapter来举例:有图片,有文字描述(SimpleAdapter)(1)首先:主布局只写一个ListView即可。

36、如下:<ListView android:id="+id/lv" android:layout_width="match_parent" android:layout_height="wrap_content" ></ListView>(2)然后再在逻辑代码中:先绑定ListView对象,声明创建SimpleAdapter对象,此时它需要五个参数:参数1:context上下文参数;参数2:数据来源(必须只能是List<Map<K,V>>类型的集合对象,且键值只能是字符串的);参数3:确定

37、一个界面布局的唯一标识,该界面布局针对的是每一个列表项;参数4:是由上面集合中所有键值组成的一个字符串数组的参数,该参数决定提取集合对象中那些键对应的键值来生成列表项;参数5:是由列表项的布局文件中的组件的id组成的一个int类型的数组,该参数决定了上面map中的value值数据显示到对应的组件上。所以要先声明创建一些数据,封装到一个List集合当中。还有,这次我们对列表项的布局文件进行自定义设置。最后将adapter加载到ListView上面即可。(3)另外,我们还可以为列表项添加监听器。一个是点击事件,一个是长按事件。其中点击事件和长按事件的方法中都有4个参数,其中第三个参数int类型的p

38、osition是指点击的是第几项(从0开始)。总结:功能强大,可以实现更复杂的列表项。数据复杂。但是只能显示本地图片,不能在线更新数据(如多个文件的下载进度)。5.其实还有另外一个adapter适配器:SimpleCursorAdapter:与SimpleAdapter相似,只是用于包装Cursor提供的数据。而Cursor是Android开发专用的数据库(SQLList)返回的一个结果集。以后学SqlList的时候在学这个适配器。6. BaseAdapter接口的方法:最后一种方法,我们以后可能用到最多的一种adapter是BaseAdapter。同样是上面的例子,主布局文件的代码和列表项布

39、局的代码完全一致。主要是逻辑代码的不同:首先,BaseAdapter是一个接口,有四个需要实现的方法,所以要先创建一个BaseAdapter的实现类,在该类中中将这四个方法实现。在此之前,我们先为adapter提供一些数据来源,上面我们将每个列表项的数据存放在一个对应的map对象中,这次我们创建一个MyBean类,将数据和该类的属性挂钩,将每个列表项的数据存放在一个对应的类对象中。那么就可以将多个类对象封装在一个List集合当中作为数据来源。然后其他操作和上面的基本一致,关注的主要是对BaseAdapter接口中的四个方法的实现。前三个方法还好理解,分别是:返回列表项的个数;返回列表项的对象;

40、返回列表项的位置。而比较麻烦的是第四个方法:它返回的是每一个列表项Item的布局对对象View。2.4 Android所需知识的理解2.4.1 自定义控件自定义控件在安卓中还是有一定的作用的。就像莎士比亚写的哈姆雷特,每一个哈姆雷特的读者,都有自己的感悟,客户需求也是一样的,安卓系统自带的一些控件,根本无法满足成千上万的客户需求,这时候就需要开发者根据用户的需求,自行设计出满意的结果。当然这还是要基于安卓最基础的控件的。下面就简单的说一下设计自定义控件的步骤。写一个自定义View的具体步骤如下: (1)首先我们要为自定义的控件,创建一个属于它自己的类,但前提是要将他继承自控件的根父类;而且将父

41、类的构造器添加在类中。 (2)另外,还要添加父类中的一些方法,例如:onDraw(Canvas huihua),这个方法的作用是,为自定义控件展现出它的形状和外观等等,其中canvas是一个画布对象,那么在该类中可以声明一个画笔对象(Paint),然后在该方法中实例化一下就可以用了,画笔对象有很多方法,例如:给画笔赋颜色:setColor(Color.RED)。画布有画各种图形的方法,例如:drawRect(.)画矩形。若该view要实现手势操作的话,就一定要调用一个监听器方法。该方法为:onTouchEvent(MotionEvent event):该方法只有在执行手势操作的时候才去回调,那

42、么event对象就相当于你的手指,那么,如果需要对哪一个绘制的图形进行手势操作的话,只要获取到event对象的坐标值,然后传值给该控件的坐标就可以了。但要实现手势操作的显示,还必须在该方法中写上通知系统在改变坐标后重新绘制图形的方法(通知系统重新绘制图形的方法是:invalidate();),由于该监听器方法的返回类型是boolean,所以最后还要return true;一下。这样,一个自定义的View就写好了。然后该如何用这个自定义的View。另外使用自定义View的方法有两种: 方法一:偏重java代码。(1)要用这个自定义View,就要将其放在一个布局文件中的一个布局中。前提操作是:先在

43、该布局文件对应的界面(Activity)中的onCreate()方法中,将存放自定义View的布局对象和该Activity通过id进行绑定(和对布局中控件的绑定一样);然后在该方法中创建(new)一个自定义View的对象(此时就联系到上面写自定义View类时的构造器,我们就用只有一个Context类型参数的构造器;例如:MyView mv=new MyView(context),此时这个参数最好写成Activity类名.this。(Context解释具体看下面)。(2)然后再将该自定义View对象添加到刚才绑定好的布局对象中。具体方法是:addView(View对象名)。方法二:纯xml文件方

44、式(推荐使用,UI全写在xml中,逻辑全写在java中。这样看起来整洁明了)。 (1)在布局文件xml中使用自定义View和使用自带的View一样,只是标签名要写全路径,从包名开始,例如:<包名.自定义View的文件名 属性=“属性值“./>其中属性的用法也和自带的View一样。2.4.2 进一步说明这次自定义View的创建有所不同,上次是由纯java代码写出的一个自定义View;而这次是先在layout的一个布局文件(自定义View的一个布局文件)中用各种控件组合成一个新的控件。然后再创建一个自定义View(后面就用MyView来代替)的java类.那么MyView继承的类由它的

45、布局文件采用的布局来决定。然后在MyView类中用init()方法将它的布局文件和子控件加载到它的类中(子控件用id绑定到各自的对象上),注意加载的方法。另外再说一下自定义属性的问题。当我们的自定义控件组合好以后,其中一些子控件需要我们在新控件中对它进行赋值。那么我们就需要给自定义控件创建自定义的属性。首先在values文件夹中,创建一个安卓的可扩展标记语言的文件,只能命名为attrs。然后在根标签<resources>下添加。在标签<attr>中name用来设属性名,format用来设属性值的类型。另外<declare-styleable>中的name是为

46、这组属性起一个名字,通过这个名字将这些属性加载到myView类中,然后再通过属性名将各个属性传给他们各自对应的子控件的值。将以上方法和init方法的调用写在MyView的构造器中,自定义控件的创建就算完成了。具体代码如下:public class AsdView extends RelativeLayoutprivate ImageView icon,iv;private TextView name;public AsdView (Context dfsd, AttributeSet wewe) super(dfsd, wewe);init(dfsd);/将我们自己写的自定义属性加载进来,返回

47、值是一个TypedArray ta=context.obtainStyledAttributes(wewe,R.styleable. AsdView _Attrs);icon.setImageDrawable(ta.getDrawable(R.styleable. AsdView _Attrs_src);name.setText(ta.getString(R.styleable. AsdView _Attrs_text);ta.recycle();/回收资源private void init(Context dfsd)/将自定义的布局文件加载到当前类里面View.inflate(dfsd, R

48、.layout.myitem, this); icon=(ImageView)this.findViewById(R.id.icon); iv=(ImageView)this.findViewById(R.id.iv); name=(TextView)this.findViewById(R.);自定义控件创建完成以后,使用时当然推荐用xml文件方式的方法,和用普通控件的方式一样。只是有一点不同,在使用自定义属性时要注意,由于自定义属性的命名空间和普通控件属性的命名空间不同。书写时要注意:写普通属性时前面是android:,写自定义属性时前面是自定义的空间名。Android中普通属

49、性的命名空间在布局中就有。而自定义属性的命名空间需要我们自己去添加,前面的名字也有自己来定。3 系统分析3.1 系统可行性分析3.1.1 技术的可行性开发这款基于android系统的考勤软件,要涉及到很多知识,首先要熟悉java编程语言,这是必须的,另外还要涉及到数据库,网络编程,xml,各种框架和android等各方面的技术。下面我们介绍一下这些技术如今的现状:1、首先,Java作为一种面向对象的编程语言,它不仅能够编写跨越平台的应用软件,而且该技术具通用于各种平台、环境,效率也非常高、在平台之间也易于移植,并且还有一定的安全性。在加上它的开源和不断更新,使开发者使用起来更加简便。2、and

50、roid系统,在上面对它的发展也有了一定的介绍,该系统框架已经相当成熟,而且至今还在不断的完善。首先,强大的系统内核,硬件抽象层,中介软件,这都是它最值得骄傲的地方;最后还有一个强大的折叠安全权限机制作为保障,它是一个权限分立的操作系统,一个应用只能用一个系统识别身份来运行(Linux用户ID与群组ID)。3、XML,是一种可扩展的标识语言,是从SGML和HTML发展而来的。该技术已经有了长达20年的经验积累,如今已经成为了全球的一种标准。另外再加上大众普遍使用的数据库等技术。该考勤软件系统的开发技术方面有一定的可行性。3.1.2 操作可行性本次研究的课题是完全基于android客户端的,只要

51、拥有一款版本在4.0之上的安卓智能手机,即可安装运行。而且安卓手机的使用如今已经相当普遍,基本每个人都会使用,再加上这款软件设计的界面简洁,功能完善,用户对此一目了然,使用起来十分方便。3.1.3 经济可行性开发这款软件,首先需要一些设备,一台性能不错的电脑,一种好用的IDE开发工具,能够运行android软件的环境的插件。而这些对于一个开发人员来说是很熟悉的,电脑就不用说了,IDE开发工具可以用Eclipse,也可以用谷歌最近推出的Android Studio,这些工具都是不需要付费的,再加上谷歌提供的开源插件ADT,可以看出,在资金条件方面没有任何问题。在人力资源方面,本人对于androi

52、d软件开发的基础知识有了一定的掌握,就算有不会的地方,还有指导老师的提点,所以在这方面也是没有问题的。综上所述,该系统在人力资源、资金条件要求都不高,具有经济可行性。3.2 需求分析及其重要性需求分析是一个软件项目开发的重要环节之一,它是开发者对一个项目后续开发最基础的东西。它的作用就是:“对一个软件项目的开发,阐述它该实现什么样的功能,用户要求完成什么样的程度,最后该达到什么样的结果”。在此步骤中,程序员收集需要开发所有关于系统的信息,以及将信息写入到该用户和程序员可以批准要求规范。需求分析作为项目开发的根本依据,是不可或缺的。在软件行业萌芽时期,并没有人过多的去关注它,但终究有一天,软件危

53、机的来临唤醒了人们对需求分析的重视。先不说一个软件的详细功能是否能够实现,如果做出来的软件不能够符合客户的需求,就算开发者认为它再完美,但终究是一个不合格产品。所以,以“客户就是我们的上帝”为原则,需求分析就是软件项目开发的基础。许多大型应用程序的最终失败,大多是由于不合格的需求文档,或者说是需求分析师根本就没有搞清楚客户心里真正想要的是什么,这导致了开发者需要重复几次的去修改程序,修改需求分析,造成了程序设计不能成功,或者是没有与顾客良好的沟通,导致客户需求不能正确确认。或客户需求是不断变化的,这也会影响到开发者的工作进程。万事都是开头难,软件的需求分析作为软件项目开发的第一步,也是困难重重

54、,它可以说是这个项目开发成败的关键,如果在关键环节上出现故障,一旦这个项目进入了设计开发中,那么它将耗费一段很长的时间,甚至有重新开始设计的危险,那将前功尽弃。相反,如果在需求分析上有了充分的准备,写出了一个完美的需求文档,那么在后面设计开发的过程中,不仅使工作流程顺利进行,还可以节省大量的时间和人力。在软件项目开发的过程中,最复杂最困难的一步就是,他最终要达到一个什么样的目标程度。这些对于一个开发者来说,往往是无法预料的。所以,要编写出一个详细的技术要求,也不是一份轻松的工作。因为它要考虑到很多方面的因素。例如用户和其他软件系统的所有接口等等。同时,这是成功的关键或链接,一旦出现失误,那么对

55、整个项目来说,将会是一个很大的损失,更严重的是,它是很难修改它的的错误。目前,由于我国对该技术的应用相对较晚,在生产方面是相对复杂的,如今,每一个公司基本上都不会只有一个单一的系统存在,它们之间常常有密不可分的联系,只要有一个部门稍有变动,将会影响到整个公司团体,这也算是考验一个开发者高端技术的时候。就拿现在最常见的资金终端用户来说,它通常有一个永远在运行,提供访问的服务端,一个用来处理用户业务的维护端,然后就是用户的web访问端,以及APP移动端。但是对于我们开发者来说,没有必要准备客户的批准文件,那么我们怎么知道什么时候项目结束?我们怎样才能让顾客满意? 但是,即使它不是商业软件需求的目的

56、。也是必须的,当然,也有这种可能,不需要的文件可以和别人的意见保持相对一致,但更常见的是还会有反复返工不可避免的发生了,并且,如果根据原来的需求文档,重新对软件项目进行开发,那么它耗费的成本将是无法令开发商接受的,还不如重新做一个符合要求的需求文档开始。如今,在移动通信方面,我国在其他国家中电子设备的进口量,在国际上也是首屈一指的,凤凰新闻、腾讯微博、网易邮箱、小游戏等各种各样一系列移动设备客户端的新软件得到了广大群众的欢迎,搭载着谷歌公司开发出来的安卓系统的4G手机自然是发展迅猛,该智能系统在当下是目前最受欢迎的手机操作系统,凭借着谷歌公司强大的开发团队和深厚的技术经验,安卓手机操作系统已经

57、包揽了绝大多数手机设备厂商的眷顾。在如今的安卓、IOS、Windows Phone三大智能手机操作系统当中,安卓和其他两大手机操作系统相比有两个非常大的优势:一个就是安卓系统的开源性,使他拥有快速方便的应用开发。另一个就是他良好的通信性能和简洁的可操作性,也因此使其拥有了大多数用户的认可。信息通信的优良性在现代高效、快节奏的社会生活中有着至关重要的作用,在当今的大数据时代下,数据挖掘已经是一个热名词,很多大公司,由于对数据信息的读取和处理,特别是在结构复杂、组织要求严密的公司中更是显得尤为重要,一个公司如果要想在尽量短的时间内壮大起来,就必须深入了解现代信息化的社会,准确的抓住当代社会和大众的需求,然后针对这些需求,对该公司文化方面的建设、技术程度的要求、公司的管理系统和层次结构等各方面进行自动化,现代信

温馨提示

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

评论

0/150

提交评论