安卓计算器开发实验报告.docx

上传人:b****6 文档编号:5551895 上传时间:2022-12-19 格式:DOCX 页数:18 大小:50.53KB
下载 相关 举报
安卓计算器开发实验报告.docx_第1页
第1页 / 共18页
安卓计算器开发实验报告.docx_第2页
第2页 / 共18页
安卓计算器开发实验报告.docx_第3页
第3页 / 共18页
安卓计算器开发实验报告.docx_第4页
第4页 / 共18页
安卓计算器开发实验报告.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

安卓计算器开发实验报告.docx

《安卓计算器开发实验报告.docx》由会员分享,可在线阅读,更多相关《安卓计算器开发实验报告.docx(18页珍藏版)》请在冰豆网上搜索。

安卓计算器开发实验报告.docx

安卓计算器开发实验报告

上海电力学院

嵌入式WebOS应用开发

实验报告

实验名称:

使用AndroidDeveloperSDK开发应用程序

    专业:

姓名:

  

班级:

学号:

一、作品的运行环境及安卓SDK基础操作

SDKAndroidDeveloper是一款在windows系统上运行的针对Android应用开发的谷歌官方软件(需要JAVA环境支持)。

1、导入工程

2、建立虚拟机

在运行虚拟机是为保证机器的顺畅运行建议选择分辨率较低的虚拟机,但是其RAM最好设为512MB,因为部分程序如果调用资源过大会导致虚拟机无法运行。

3、虚拟机界面

二、作品介绍

我的应用是一个计算器。

能实现包括小数的加减乘除运算,结果过大会自动用科学记数法表示,另外还有退格跟清屏功能键。

三、编程以及运行调试

(一)、在MyDesktop主界面中添加应用图标

1.首先在我的桌面上添加你应用的图标以及文字,双击图标后就可以看见对应的代码,可直接在代码中进行修改图片文字的大小颜色等等。

以下是对应图像图标的代码

图片可以在左侧的选

项中自行进行挑选;

也可以添加自己的图片,

只要将图片放到对应的

文件夹之下在刷新就可

以,但不建议放分辨率

过高图片可能会出现超

出界面的等错误。

(二)、在res/layout目录下新建.xml文件,由于计算器的按钮很多,要在xml界面中添加排版:

xml代码首末的格式较为自由可以直接在界面中拖动图标位置以及修改大小,而其他layout则更会自动排列,各有优劣。

(三)、在src/目录下新建.java文件,计算器的按钮算法等都在此实现。

(三)、声明工程名

1、在应用中有三处需要声明,首先是在AndroidManifest.xml

2、然后是在MainActivity.java

四、代码展示

(一)、.xml界面代码

xmlversion="1.0"encoding="utf-8"?

>

android=

android:

layout_width="fill_parent"

android:

layout_height="fill_parent"

android:

orientation="vertical">

android:

id="@+id/tableLayout1"

android:

layout_width="match_parent"

android:

layout_height="wrap_content"

android:

collapseColumns="4">

android:

id="@+id/tableRow_et"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/et"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent"

android:

layout_span="4"

android:

focusable="false"

android:

gravity="right"

android:

inputType="text"

android:

singleLine="true">

android:

id="@+id/tableRow1"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/bt_7"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="7"/>

android:

id="@+id/bt_8"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="8"/>

android:

id="@+id/bt_9"

android:

layout_width="1px"

android:

layout_height="80px"

android:

text="9"/>

android:

id="@+id/bt_back"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="back"/>

android:

id="@+id/tableRow2"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/bt_4"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="4"/>

android:

id="@+id/bt_5"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="5"/>

android:

id="@+id/bt_6"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="6"/>

android:

id="@+id/bt_divide"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="/"/>

android:

id="@+id/tableRow3"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/bt_1"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="1"/>

android:

id="@+id/bt_2"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="2"/>

android:

id="@+id/bt_3"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="3"/>

android:

id="@+id/bt_multiply"

android:

layout_width="80px"

android:

layout_height="80px"

android:

text="*"/>

android:

id="@+id/tableRow4"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/bt_0"

android:

layout_width="50px"

android:

layout_height="80px"

android:

text="0"/>

android:

id="@+id/bt_point"

android:

layout_width="50px"

android:

layout_height="80px"

android:

text="."/>

android:

id="@+id/bt_add"

android:

layout_width="50px"

android:

layout_height="80px"

android:

text="+"/>

android:

id="@+id/bt_sub"

android:

layout_width="50px"

android:

layout_height="80px"

android:

text="-"/>

android:

id="@+id/tableRow4"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent">

android:

id="@+id/bt_equal"

android:

layout_width="fill_parent"

android:

layout_height="fill_parent"

android:

layout_span="3"

android:

text="="/>

android:

id="@+id/bt_clear"

android:

layout_width="50px"

android:

layout_height="80px"

android:

text="clear"/>

(二)、.java功能代码

importandroid.app.Activity;

publicclassfffActivityextendsActivity

{

privateButtonbt_1;

privateButtonbt_2;

privateButtonbt_3;

privateButtonbt_4;

privateButtonbt_5;

privateButtonbt_6;

privateButtonbt_7;

privateButtonbt_8;

privateButtonbt_9;

privateButtonbt_0;

privateButtonbt_add;

privateButtonbt_sub;//减

privateButtonbt_multiply;//乘

privateButtonbt_divide;//除

privateButtonbt_back;

privateButtonbt_equal;//等于

privateButtonbt_point;//点

privateButtonbt_clear;//清除

privateEditTextet_play;//显示

privateStringstr_oper="+";//运算符

privateStringBufferstr_display=newStringBuffer();;//显示

privateStringstr_result;//结果显示

privatedoublenum1;

privatedoublenum2;

privatebooleanflag=true;//小数点个数开关控制;

privatebooleanb_sub,b_mul,b_div;//运算符开关控制

@Override

publicvoidonCreate(BundlesavedInstanceState)

{

super.onCreate(savedInstanceState);

bt_2=(But

et_play.setText("0");

bt_0.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("0");

et_play.setText(str_display.toString());

}

});

bt_1.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("1");

et_play.setText(str_display.toString());

}

});

bt_2.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("2");

et_play.setText(str_display.toString());

}

});

bt_3.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("3");

et_play.setText(str_display.toString());

}

});

bt_4.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("4");

et_play.setText(str_display.toString());

}

});

bt_5.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("5");

et_play.setText(str_display.toString());

}

});

bt_6.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("6");

et_play.setText(str_display.toString());

}

});

bt_7.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("7");

et_play.setText(str_display.toString());

}

});

bt_8.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("8");

et_play.setText(str_display.toString());

}

});

bt_9.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_display.append("9");

et_play.setText(str_display.toString());

}

});

bt_point.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

if(flag)

{

str_display.append(".");

flag=false;

}

}

});

bt_back.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

if(str_display.length()!

=0)

{

str_display.deleteCharAt(str_display.length()-1);

et_play.setText(str_display.toString());

}

}

});

bt_add.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_oper="+";

if(!

(str_display.toString()==""))

{

num1+=Double.parseDouble(str_display.toString());

str_display=newStringBuffer("");

}

if(!

(str_result==null))

{

num1=Double.parseDouble(str_result);

str_result=null;

}

et_play.setText(String.valueOf(num1));

flag=true;

}

});

bt_sub.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_oper="-";

if(!

b_sub&&!

(str_display.toString()==""))

{

num1=Double.parseDouble(str_display.toString());

et_play.setText(String.valueOf(num1));

str_display=newStringBuffer("");

b_sub=true;

}else

{

if(!

(str_display.toString()==""))

{

num1-=Double.parseDouble(str_display.toString());

str_display=newStringBuffer("");

}

if(!

(str_result==null))

{

num1=Double.parseDouble(str_result);

str_result=null;

}

et_play.setText(String.valueOf(num1));

}

flag=true;

}

});

bt_multiply.setOnClickListener(newOnClickListener()

{

@Override

publicvoidonClick(Viewv)

{

str_oper="*";

if(!

b_mul&&!

(str_display.toString()==""))

{

num1=Double.parseDouble(str_display.toString());

et_play.setText(String.valueOf(num1));

str_display=newStringBuffer("");

b_mul=true;

}else

{

if(!

(str_display.toString()==""))

{

num1*=Double.parseDouble(str_display.toString());

str_display=newStringBuffer("");

}

if(!

(str_result==null))

{

num1=Double.parseDouble(str_result);

str_result=null;

}

et_play.setText(String.valueOf(num1));

}

flag=true;

}

});

bt_divide.setOnClickListener(newOnClickListener()

{

@Override

pub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1