基于Android计算器功能的实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Android课程设计

基于Android计算器功能的实现

所在系(院):

学生姓名:

指导教师:

研究起止日期:

目录

1、软件产品介绍 (1)

2、软件开发环境 (2)

3、软件功能说明 (2)

4、程序流程图 (2)

5、软件介面及程序主要代码 (4)

6、设计总结.................................... .. (10)

基于Android计算器相关技术概述

1、软件产品介绍

随着移动通信技术和网络技术的迅速发展,手机系统发生了巨大的变化,从进行简单通话功能的非智能手机到现在集上网、聊天、收发邮件、视屏电话会议等各种服务于娱乐为一身的智能手机系统。由Google公司牵头众多实力雄厚的软硬件厂商加盟成立了OMS 联盟,并推出的Android平台手机系统。作为时代的新生儿,Android手机操作平台有着得天独厚的优势广阔的发展前景。本文正是基于Android平台开发的计算器。计算器作为现在人们日常生活中常用的一种工具已经可以说是人们日常生活中必不可少的工具了。

整个程序基于android技术开发,出总体模块外主要分为输入模块、显示模块以及计算模块(包括一些其他功能)这三大部分。在整个系统中总体模块控制系统的生命周期,输入模块部分负责读取用户输入的数据,显示模块部分负责显示用户之前输入的数据以及显示最终的计算结果,计算模块部分负责进行数据的运算以及一些其他的功能。下面较为详细的做了说明。

具体的说,总体模块的作用主要是生成应用程序的主类,控制应用程序的生命周期。

输入模块主要描述了计算器键盘以及键盘的监听即主要负责读取用户的键盘输入以及响应触屏的按键,需要监听手机按键动作以及用指针事件处理方法处理触屏的单击动作(以松开按键为准)。同时提供了较为直观的键盘图形用户界面。

显示模块描述了计算器的显示区,即该区域用于显示用户输入的数据以及最终的计算结果,同时还负责显示一些其他的信息。

计算模块则主要描述了计算器的整体,实现了计算器的界面,负责计算用户输入数据,包括加、减、乘、除、等各种计算功能以及清零的功能。

用系统框图来表示即如图 2-0。

图2-0 系统框图

2、 软件开发环境

论文主要阐述以面向对象的程序开发语言eclipse 为开发工具, 设计并实现基于 Android 的计算器。

步骤1

安装JDK 步骤2

安装Tomcat 步骤3

安装 Android SDK 步骤4安装Eclipse 步骤5安装Eclipse 的ADT 插件 步骤6 Eclipse 的SDK 配置 步骤7建立AVD 虚拟机

3、 软件功能说明

系统包括普通计算功能,基本的加减乘除,小数运算以及清零功能。如图2-1。

如图2-1 功能图

4、 程序流程图

知道了系统的功能以后,我们通过main.xml 来建立显示界面,完成后系统开始监听用户的按键输入,每次输入系统都会判断一次用户输入的类型,是数字还是运算符号或者是清除,判断完后分成不同类型如数字,符号,基本运算等等进行进一步的处理,根据用户的要求继续进行下一步的操作,最后计算出最终结果并显示在显示区。

系统流程图如图2-2所示:

除法(/) 手机计算器 加法(+) 减法(-) 乘法(*) 清零 C 对任意两个数据进行相加的操作 对任意两个数据进行相减的操作 对任意两个数相乘的操作 任意两个数相除的操作,但要符合运算逻辑 清除已经被记忆的数据

5、软件介面及程序主要代码

1:(1)XML文件生成

Main.xml的代码:

根据MVC原则,UI应该与程序逻辑相分离,因此,在XML中定义UI结构是强烈推荐的。常用的方式是用图形化的方式来编写布局Layout,这些布局保存在XML文件中,然后编译成资源,在程序中Activity通过setContentView()方法来加载,然后通过findView Byld()方式来获得每一个界面组件的引用。实现过程及步骤。在layout文件夹下定义自己的XML页面。

如计算器属性界面的实现如下所示

部分代码

xmlns:android="/apk/res/android"

android:orientation="vertical"android:layout_width="fill_parent"

android:layout_height="fill_parent">

android:layout_height="wrap_content"android:gravity="right"android:tex

t="@string/zero"/>

..........

LinearLayout是线性布局控件,它包含的子控件将以横向或竖向的方式排列,按照相对位置来排列所有的widgets或者其他的containers,超过边界时,某些控件将缺失或消失。

android:id="@+id/txt_input" // 定义了布局的变量名称为txt_input,会自动写进R. java; 在R.Java文件中会生成内部类id,可在主程序里面调用R.id.txt_input来获取这个布局变量实体。

android:orientation="vertical" //这个布局是垂直布局;(水平horizontal) android:layout_width="fill_parent"

//设置一个顶部布局或控件强制性让它布满整个屏幕;

("wrap_content"设置一个顶部布局或控件强制性让它布满整个屏幕)

android:gravity="right" //限定里面的内容向右对齐;

(android:layout_gravity="right" 表示在界面上的位置向右对齐)

用XML实现用户界面具有以下优点:

a)XML文件结构清晰,易于扩展,系统可扩展性好。

b) 用户界面与业务逻辑完全分离,降低了系统界面与业务逻辑的耦合性。

c)XML文件简单易懂,可维护性好。

2:计算器控制逻辑设计与实现代码:

CountMain.java

用户在输入过程中,肯定会存在一定的错误,程序设计过程中需要对应用程序进行容错处理。容错设计比如:在输入过程中小数的话只能有一个小数点,操作符不能连续输入,整数数据的开头不能出现0等等。所以设计了如下代码:

// 数字监听

public void xianshi(final Button but, final EditText t1) {

but.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

//判断开始是否可以按操作符

相关文档
最新文档