Android平台计算器设计Word下载.docx
- 文档编号:3558742
- 上传时间:2023-05-01
- 格式:DOCX
- 页数:24
- 大小:210.89KB
Android平台计算器设计Word下载.docx
《Android平台计算器设计Word下载.docx》由会员分享,可在线阅读,更多相关《Android平台计算器设计Word下载.docx(24页珍藏版)》请在冰点文库上搜索。
知道了系统的功能以后,我们通过main.xml来建立显示界面,完成后系统开始监听用户的按键输入,每次输入系统都会判断一次用户输入的类型,是数字还是运算符号或者是清除,判断完后分成不同类型如数字,符号,基本运算等等进行进一步的处理,根据用户的要求继续进行下一步的操作,最后计算出最终结果并显示在显示区。
系统流程图如图所示:
2.2系统功能设计
整个系统的功能比较多,比较复杂,如上所说,可以分为十多个功能模块,但是逻辑上理解其实不算困难,系统包括普通计算功能,包括加减乘除,退格以及清零功能。
下面就让我们用图来表示:
以上就是系统的流程图,不过只是一个简单是示意流程图,不是整个程序的完整流程图,整个系统的流程图由于模块众多,整个列举不易于理解,故此就只采用简单流程图作为示例说明,反而更加的简单明了。
3基于Android平台系统具体设计
系统除了总体模块以外主要由三大模块来组成,即输入模块,显示模块和计算模块。
用系统框图来表示即如图。
系统这三大模块都各自包含什么内容在下文的系统详细设计中会有进一步的说明,此处就暂且略过。
下面就来详细的说明一下系统的各个模块都是如何设计的。
3.1
总体模块详细设计
总体模块需要完成的任务主要就是系统的程序启动类,需要负责整个系统的生命周期。
同时在还要在模块中完成菜单栏的所有功能,即退出程序,记忆数据,显示数据,清除记忆数据这四个功能。
总体模块的功能图如图:
3.2
输入模块详细设计
系统如果想完成计算器中的各种功能,首先用户要能进行数据输入,由于是在触屏手机上开发计算器程序,所以要求输入可以直接使用触屏进行,所以在设计的时候就要充分的考虑要这一点。
正是由于考虑到这个特殊的地方,所以在进行模块设计中,选择编写输入模块类的时候会特意选取使用了可以支持触屏输入的特殊增强型图形用户界面类。
输入模块主要的任务是描述计算器键盘以及实现键盘的监听,即当用户点击按键或者屏幕的时候监听器会去调用相应的处理办法,本模块还需要为系统提供了一个较为直观的键盘图形用户界面。
输入模块的功能图如图:
3.3
显示模块详细设计
作为手机计算器系统,显示部分也是必不可少的一部分。
没有显示部分就没有办法显示用户输入的数字是否正确,甚至不能显示计算出的结果,由此可见显示模块即包括输入的部分也包括输出的部分。
显示模块主要要完成的任务是描述计算器的显示区,该区域用于显示用户输入的数据以及最终的计算结果和一些其她信息。
同时本模块还将提供调用和设置显示的具体方法。
显示模块的功能图如图:
3.4
计算模块详细设计
系统要完成整个的计算器的计算功能,那么计算模块就是整个系统的重点模块。
没有计算模块系统就不能顺利的完成计算,就无法达到用户的要求。
所以计算模块的设计也是本次系统设计中的重点。
系统想要能在屏幕上显示出计算器的样子要有整体的布局,在本模块中要完成布局的具体设计,使用户能够看到整个计算器的画面。
同时系统想完成计算功能必须要处理用户的输入,当输入模块的监听传到计算模块中时,计算模块就要根据相应的方法进行进一步的处理。
这部分主要是对输入进行的逻辑判断,基本会通过if
else来实现逻辑判断。
计算模块的功能图如图:
4计算器系统效果如下:
5计算器系统实现代码如下:
<
?
xmlversion="
1.0"
encoding="
utf-8"
>
LinearLayoutxmlns:
android="
android:
layout_width="
match_parent"
layout_height="
orientation="
vertical"
>
<
LinearLayoutandroid:
fill_parent"
wrap_content"
TextView
id="
@+id/tvResult"
height="
50dp"
text="
@string/tvResult"
/>
/LinearLayout>
Button
@+id/btnBackspace"
width="
150dp"
layout_marginLeft="
10dp"
@string/btnbackspace"
/>
@+id/btnCE"
@string/btnCE"
@+id/btn7"
75dp"
@string/btn7"
@+id/btn8"
@string/btn8"
@+id/btn9"
@string/btn9"
@+id/btnDiv"
@string/btnDiv"
@+id/btn4"
@string/btn4"
@+id/btn5"
@string/btn5"
@+id/btn6"
@string/btn6"
@+id/btnMul"
@string/btnMul"
@+id/btn1"
@string/btn1"
@+id/btn2"
@string/btn2"
@+id/btn3"
@string/btn3"
@+id/btnAdd"
@string/btnAdd"
@+id/btn0"
@string/btn0"
@+id/btnC"
@string/btnC"
@+id/btnEqu"
@string/btnEqu"
@+id/btnSub"
@string/btnSub"
packagecom.example.week2;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.TextView;
importandroid.app.Activity;
publicclassMainActivityextendsActivity
implementsOnClickListener{
//声明一些控件
Buttonbtn0=null;
Buttonbtn1=null;
Buttonbtn2=null;
Buttonbtn3=null;
Buttonbtn4=null;
Buttonbtn5=null;
Buttonbtn6=null;
Buttonbtn7=null;
Buttonbtn8=null;
Buttonbtn9=null;
ButtonbtnBackspace=null;
ButtonbtnCE=null;
ButtonbtnC=null;
ButtonbtnAdd=null;
ButtonbtnSub=null;
ButtonbtnMul=null;
ButtonbtnDiv=null;
ButtonbtnEqu=null;
TextViewtvResult=null;
//声明两个参数。
接收tvResult前后的值
doublenum1=0,num2=0;
doubleResult=0;
//计算结果
intop=0;
//判断操作数,
booleanisClickEqu=false;
//判断是否按了“=”按钮
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//从布局文件中获取控件,
btn0=(Button)findViewById(R.id.btn0);
btn1=(Button)findViewById(R.id.btn1);
btn2=(Button)findViewById(R.id.btn2);
btn3=(Button)findViewById(R.id.btn3);
btn4=(Button)findViewById(R.id.btn4);
btn5=(Button)findViewById(R.id.btn5);
btn6=(Button)findViewById(R.id.btn6);
btn7=(Button)findViewById(R.id.btn7);
btn8=(Button)findViewById(R.id.btn8);
btn9=(Button)findViewById(R.id.btn9);
btnBackspace=(Button)findViewById(R.id.btnBackspace);
btnCE=(Button)findViewById(R.id.btnCE);
btnC=(Button)findViewById(R.id.btnC);
btnEqu=(Button)findViewById(R.id.btnEqu);
btnAdd=(Button)findViewById(R.id.btnAdd);
btnSub=(Button)findViewById(R.id.btnSub);
btnMul=(Button)findViewById(R.id.btnMul);
btnDiv=(Button)findViewById(R.id.btnDiv);
tvResult=(TextView)findViewById(R.id.tvResult);
//添加监听\
btnBackspace.setOnClickListener(this);
btnCE.setOnClickListener(this);
btn0.setOnClickListener(this);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
btn5.setOnClickListener(this);
btn6.setOnClickListener(this);
btn7.setOnClickListener(this);
btn8.setOnClickListener(this);
btn9.setOnCl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 平台 计算器 设计