安卓开发的简易计算器
来源:互联网 发布:java 重载 为什么 编辑:程序博客网 时间:2024/05/16 14:28
嘛,学习android已经一星期了,第一次做出小软件还是有点小兴奋的。介绍下我的代码吧
其中关于Button和 Listener的声明神马的,还有ListenerEqu 部分来自这里的代码http://blog.csdn.net/nupt123456789/article/details/7832443 非常感谢这位的代码给我的帮助。。 这个小计算器其他部分都是我自己编的- -,可能有点问题。各位跟我一样的初学者就看看就好了~我感觉蛮好懂的,没有什么复杂的调用。
计算器的负数还没弄,就不弄了~看看其他的部分就好了 不说了 贴代码~希望大家多多支持,这是本人安卓开发第一步~
package com.example.calculate1;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import java.lang.*;import com.example.calculate1.R.string;public class MainActivity extends Activity {Button btn_num1;Button btn_num2;Button btn_num3;Button btn_num4;Button btn_num5;Button btn_num6;Button btn_num7;Button btn_num8;Button btn_num9;Button btn_num0;Button btnEqu;Button btnAdd;Button btnSub;Button btnMul;Button btnDiv;Button btnPoint;Button btnCln;OnClickListener listener0=null;OnClickListener listener1=null;OnClickListener listener2=null;OnClickListener listener3=null;OnClickListener listener4=null;OnClickListener listener5=null;OnClickListener listener6=null;OnClickListener listener7=null;OnClickListener listener8=null;OnClickListener listener9=null;OnClickListener listenerMul=null;OnClickListener listenerDiv=null;OnClickListener listenerSub=null;OnClickListener listenerAdd=null;OnClickListener listenerPoint=null;OnClickListener listenerCln=null;OnClickListener listenerEqu=null;EditText displayText;double num1=0;double num2=0;double result=0; String myString;int calType = 0;String b;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);displayText=(EditText)findViewById(R.id.text);btn_num0 = (Button)findViewById(R.id.zero);btn_num1 = (Button)findViewById(R.id.one);btn_num2 = (Button)findViewById(R.id.two);btn_num3 = (Button)findViewById(R.id.three);btn_num4 = (Button)findViewById(R.id.four);btn_num5 = (Button)findViewById(R.id.five);btn_num6 = (Button)findViewById(R.id.six);btn_num7 = (Button)findViewById(R.id.seven);btn_num8 = (Button)findViewById(R.id.eight);btn_num9 = (Button)findViewById(R.id.nine);btnAdd = (Button)findViewById(R.id.plus);btnMul = (Button)findViewById(R.id.multiple);btnSub = (Button)findViewById(R.id.subtraction);btnDiv = (Button)findViewById(R.id.division);btnPoint = (Button)findViewById(R.id.point);btnCln = (Button)findViewById(R.id.clean);btnEqu=(Button)findViewById(R.id.equail);listener0 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "0"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="0"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener1 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "1"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="1"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener2 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "2"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="2"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener3 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "3"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} else{ String c="3"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener4 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "4"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="4"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener5 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "5"; String b =myString ; myString =b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="5"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener6 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "6"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="6"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener7 = new OnClickListener(){public void onClick(View v){ if(num1==0){ String a= "7"; String b =myString ; myString =b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l",""); } else{ String c="7"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listener8 = new OnClickListener(){public void onClick(View v){if(num1==0){ String a= "8"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="8"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l",""); } displayText.setText(myString);}};listener9 = new OnClickListener(){public void onClick(View v){if(num1==0){String a= "9"; String b =myString ; myString = b+a; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");}else{ String c="9"; String d= myString ; myString =d+c; myString=myString.replaceAll("n",""); myString= myString.replaceAll("u",""); myString= myString.replaceAll("l","");} displayText.setText(myString);}};listenerPoint = new OnClickListener(){public void onClick(View v){ String b =myString ; myString=".";myString = b+myString;displayText.setText(myString); }};listenerAdd = new OnClickListener(){public void onClick(View v){ num1=Double.parseDouble(myString);calType=1;myString=null; b=null;}};listenerSub = new OnClickListener(){public void onClick(View v){num1=Double.parseDouble(myString);calType=2;myString=null; b=null;}};listenerMul = new OnClickListener(){public void onClick(View v){num1=Double.parseDouble(myString);calType=3;myString=null; b=null;}};listenerDiv = new OnClickListener(){public void onClick(View v){num1=Double.parseDouble(myString);calType=4;myString=null; b=null;}};listenerEqu = new OnClickListener(){public void onClick(View v){CharSequence temp = displayText.getText();String myString = temp.toString();num2=Double.parseDouble(myString);switch(calType){case 0:result=num2;break;case 1:result=num1+num2;break;case 2:result=num1-num2;break;case 3:result=num1*num2;break;case 4:result=num1/num2;break;default:result=0;break;}String temp_result = String.valueOf(result);displayText.setText(temp_result);myString=null; b=null;}};listenerCln = new OnClickListener(){public void onClick(View v){String temp_result = String.valueOf(result);myString=temp_result;num1=0;num2=0;displayText.setText("0");myString="null"; b="null"; }};btn_num0.setOnClickListener(listener0);btn_num1.setOnClickListener(listener1);btn_num2.setOnClickListener(listener2);btn_num3.setOnClickListener(listener3);btn_num4.setOnClickListener(listener4);btn_num5.setOnClickListener(listener5);btn_num6.setOnClickListener(listener6);btn_num7.setOnClickListener(listener7);btn_num8.setOnClickListener(listener8);btn_num9.setOnClickListener(listener9);btnAdd.setOnClickListener(listenerAdd);btnSub.setOnClickListener(listenerSub);btnCln.setOnClickListener(listenerCln);btnDiv.setOnClickListener(listenerDiv);btnMul.setOnClickListener(listenerMul);btnPoint.setOnClickListener(listenerPoint);btnEqu.setOnClickListener(listenerEqu);}protected String concat(String myString2, String a) {// TODO Auto-generated method stubreturn null;}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
上面的是Activity 下面的是Layout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context=".MainActivity" > <TableLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <EditText android:id="@+id/text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="#000" android:selectAllOnFocus="true" android:hint="0"/> <Button android:id="@+id/clean" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="清除"/> <TableRow> <Button android:id="@+id/seven" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="7"/> <Button android:id="@+id/eight" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="8"/> <Button android:id="@+id/nine" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="9"/> <Button android:id="@+id/division" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="÷"/> </TableRow> <TableRow> <Button android:id="@+id/four" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="4"/> <Button android:id="@+id/five" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="5"/> <Button android:id="@+id/six" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="6"/> <Button android:id="@+id/subtraction" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="-"/> </TableRow> <TableRow> <Button android:id="@+id/one" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="1"/> <Button android:id="@+id/two" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="2"/> <Button android:id="@+id/three" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="3"/> <Button android:id="@+id/plus" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="+"/> </TableRow> <TableRow> <Button android:id="@+id/point" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="."/> <Button android:id="@+id/zero" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> <Button android:id="@+id/equail" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="="/> <Button android:id="@+id/multiple" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="*"/> </TableRow> </TableLayout></LinearLayout>
其中Layout 这面之前用gridView 实验了下 虽然能把按键布置的很好,但是不知道怎么对这些按键进行编辑。所以只能一个个Button编辑
还有之前用了很多replaceAll 是因为 我想要实现可以输入多位数的数字进行计算,用的是字符串相互连接在一起的方法,而myString的初始值是NULL (这东西真烦,搞了我好久) 所以得用replaceAll 吧NULL去掉,差不多就这些吧~如果有点小问题应该也不是很严重~谢谢支持哈
对了 布局用的还不熟练- - 按键的排列可能有点难看 先这样吧~我要开始我的第二个小软件了,哈哈,做安卓软件还是很开心的,很有成就感
0 0
- 安卓开发的简易计算器
- 安卓简易计算器
- [安卓初学者实验]简易的计算器
- [慕课网作业-安卓]简易计算器
- 安卓计算器开发日志
- 第二课:一个简易计算器的开发
- 【iOS开发】简易加法计算器的实现
- java开发简易计算器
- 安卓模仿Windows自带计算器简易布局
- 【简易的APP开发】开发简易安卓浏览器(一)
- 安卓计算器的编写
- 安卓计算器的总结
- C的简易计算器
- 简易的计算器
- 简易的JS计算器
- android 简易的计算器
- 简易计算器的实现
- 简易的计算器
- 判断用户输入的年份是否是闰年,并在主函数main()中调用该函数(C++语言)
- 黑马程序员----集合
- 第三章 复习题
- http://hi.baidu.com/xckouy/item/c6b6024fcafc2bac61d7b9d5 java根据模板自动生成文档数据换行操作
- nagios
- 安卓开发的简易计算器
- 同一个VG的内可以lv重名么?
- 第四章 复合类型
- 申请信息服务业务(短信息)经营许可证递交材料
- 黑马程序员 java知识点1
- 二叉树
- 登山
- Fiddler教程
- Linux环境下安装JDK1.6