android开发计算器课程设计.docx
- 文档编号:9990384
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:27
- 大小:1.57MB
android开发计算器课程设计.docx
《android开发计算器课程设计.docx》由会员分享,可在线阅读,更多相关《android开发计算器课程设计.docx(27页珍藏版)》请在冰豆网上搜索。
android开发计算器课程设计
Android应用程序开发
实验报告
目录
第一章系统分析与设计3
1.1系统的可行性分析3
1.2系统的需求分析3
第二章系统详细设计3
2.1activity的详细设计3
2.2xml文件的详细设计14
第三章测试运行及总结20
3.1界面截图20
3.2运行界面截图21
3.3运行结果截图22
3.4总结22
第一章系统分析与设计
1.1系统的可行性分析
可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的,经过最初的设计目标和进行的实时调查得出以下四点的可行性分析:
(1)技术可行性:
Eclipse+AndroidADT的技术已经较为成熟,通过SUN公司(现被ORCEL公司收购)推出的跨平台、动态的JAVA语言进行开发。
(2)运行可行性:
该系统需要Android虚拟机环境,Eclipse中安装ADT,DDMS等GoogleAndroid相关插件。
其运行环境已经相当稳定,它功能丰富,包括了完备的Android程序的编码、调试、测试和发布功能,其中支持所有Android应用开发相关技术,包括SQLite,Skia,3D制作,AndroidXML,能够很好的发布Android的应用程序APK包。
(3)法律可行性:
因为是自主开发设计,所以不会构成侵权,在法律上是可行的。
通过以上的可行性分析,将采用Eclipse+AndroidADT+DDMS技术,运用JAVA语言进行系统的开发。
1.2系统的需求分析
根据分析需求,这个系统必须实现以下的功能:
(1)实现简单的数字计算功能。
作为计算器,其核心就是加减乘除。
(2)能够在手机里面以良好的界面。
第二章系统详细设计
2.1activity的详细设计
packagecom.example.counter;
importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.view.Menu;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.TextView;
publicclassMainActivityextendsActivity{
privateTextViewtextView1=null;
privateButtonbuttonzone=null;
privateButtonbutton1=null;
privateButtonbutton2=null;
privateButtonbutton3=null;
privateButtonbutton4=null;
privateButtonbutton5=null;
privateButtonbutton6=null;
privateButtonbutton7=null;
privateButtonbutton8=null;
privateButtonbutton9=null;
privateButtonbuttonadd=null;
privateButtonbuttonred=null;
privateButtonbuttondiv=null;
privateButtonbuttonmul=null;
privateButtonbuttonpint=null;
privateButtonbuttonbai=null;
privateButtonbuttongen=null;
privateButtonbuttonequal=null;
privateStringx="";
privateStringy="";
privatedoubler1=0;
privatedoubler2=0;
privateinti=0;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView1=(TextView)findViewById(R.id.textView1);
button1=(Button)findViewById(R.id.button1);
button2=(Button)findViewById(R.id.button2);
button3=(Button)findViewById(R.id.button3);
button4=(Button)findViewById(R.id.button4);
button5=(Button)findViewById(R.id.button5);
button6=(Button)findViewById(R.id.button6);
button7=(Button)findViewById(R.id.button7);
button8=(Button)findViewById(R.id.button8);
button9=(Button)findViewById(R.id.button9);
buttonzone=(Button)findViewById(R.id.button0);
buttonadd=(Button)findViewById(R.id.buttonadd);
buttonred=(Button)findViewById(R.id.buttonred);
buttonmul=(Button)findViewById(R.id.buttonmul);
buttondiv=(Button)findViewById(R.id.buttondiv);
buttonbai=(Button)findViewById(R.id.buttonbai);
buttongen=(Button)findViewById(R.id.buttongen);
buttonequal=(Button)findViewById(R.id.buttonequal);
buttonpint=(Button)findViewById(R.id.buttonpoint);
button1.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"1";
y=y+"1";
textView1.setText(y);
}
});
button2.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"2";
y=y+"2";
textView1.setText(y);
}
});
button3.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"3";
y=y+"3";
textView1.setText(y);
}
});
button4.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"4";
y=y+"4";
textView1.setText(y);
}
});
button5.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"5";
y=y+"5";
textView1.setText(y);
}
});
button6.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"6";
y=y+"6";
textView1.setText(y);
}
});
button7.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"7";
y=y+"7";
textView1.setText(y);
}
});
button8.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"8";
y=y+"8";
textView1.setText(y);
}
});
button9.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"9";
y=y+"9";
textView1.setText(y);
}
});
buttonzone.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
x=x+"0";
y=y+"0";
textView1.setText(y);
}
});
buttonpint.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x==""){
x=0+"."+"";
y=0+"."+"";
}
else{
x=x+".";
y=y+".";
textView1.setText(y);
}
}
});
buttonequal.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r2=Double.parseDouble(x);
x="";
switch(i){
case0:
textView1.setText(0+"");
break;
case1:
textView1.setText((r1+r2)+"");
break;
case2:
textView1.setText((r1-r2)+"");
break;
case3:
textView1.setText((r1*r2)+"");
break;
case4:
textView1.setText((r1/r2)+"");
break;
case5:
textView1.setText((r1%r2)+"");
break;
}
}
else{
textView1.setText(0+"");
x="";
y="";
}
r1=0;
r2=0;
i=0;
x="";
y="";
}
});
buttonadd.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r1=Double.parseDouble(x);
x="";
y=y+"+";
textView1.setText(y);
i=1;
}
else{
textView1.setText(0+"");
}
}
});
buttonred.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r1=Double.parseDouble(x);
x="";
y=y+"-";
textView1.setText(y);
i=2;
}
else{
textView1.setText(0+"");
}
}
});
buttonmul.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r1=Double.parseDouble(x);
x="";
y=y+"*";
textView1.setText(y);
i=3;
}
else{
textView1.setText(0+"");
}
}
});
buttondiv.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r1=Double.parseDouble(x);
x="";
y=y+"/";
textView1.setText(y);
i=4;
}
else{
textView1.setText(0+"");
}
}
});
buttonbai.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
r1=Double.parseDouble(x);
x="";
y=y+"%";
textView1.setText(y);
i=5;
}
else{
textView1.setText(0+"");
}
}
});
buttongen.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
if(x!
=""){
y="1/"+x;
textView1.setText(y);
r1=1/(Double.parseDouble(x));
x=r1+"";
}
else{
textView1.setText(0+"");
}
}
});
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.main,menu);
returntrue;
}
}
2.2xml文件的详细设计
android=" xmlns: tools=" android: layout_width="wrap_content" android: layout_height="wrap_content" android: orientation="horizontal" android: layout_gravity="center" android: columnCount="5" android: rowCount="5" tools: context=".MainActivity"> android: id="@+id/textView1" android: layout_width="230dp" android: layout_height="30dp" android: layout_column="0" android: layout_columnSpan="5" android: layout_row="0" android: gravity="right" android: text="@string/result" android: textSize="25sp"/>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 开发 计算器 课程设计