一个简单的计算器

来源:互联网 发布:ipad淘宝卖家软件 编辑:程序博客网 时间:2024/05/18 10:40
<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:background="#000"    android:orientation="vertical"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >   <EditText        android:id="@+id/led"       android:layout_width="288dp"       android:layout_height="79dp"       android:background="#000"       android:gravity="top|right"       android:text="0"       android:maxLength="9"       android:textColor="#FFF"       android:textSize="20pt"       android:textStyle="bold"                     />      <LinearLayout        android:layout_width="288dp"       android:layout_height="70dp"       android:orientation="horizontal"       >       <Button           android:id="@+id/clear"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="AC"            />       <Button           android:id="@+id/swt"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="+/-"            />       <Button           android:id="@+id/per"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="%"            />       <Button           android:id="@+id/div"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#f99011"           android:text="÷"            />                 </LinearLayout>      <LinearLayout        android:layout_width="288dp"       android:layout_height="70dp"       android:orientation="horizontal"       >       <Button           android:id="@+id/btn7"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="7"            />       <Button           android:id="@+id/btn8"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="8"            />       <Button           android:id="@+id/btn9"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="9"            />       <Button           android:id="@+id/mul"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#f99011"           android:text="×"            />                 </LinearLayout>      <LinearLayout        android:layout_width="288dp"       android:layout_height="70dp"       android:layout_marginTop="0.5dp"       android:orientation="horizontal"       >       <Button           android:id="@+id/btn4"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="4"            />       <Button           android:id="@+id/btn5"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="5"            />       <Button           android:id="@+id/btn6"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="6"            />       <Button           android:id="@+id/sub"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#f99011"           android:text="-"            />                 </LinearLayout>      <LinearLayout        android:layout_width="288dp"       android:layout_height="70dp"       android:layout_marginTop="0.5dp"       android:orientation="horizontal"       >       <Button           android:id="@+id/btn1"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="1"            />       <Button           android:id="@+id/btn2"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="2"            />       <Button           android:id="@+id/btn3"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#C3C4C5"           android:text="3"            />       <Button           android:id="@+id/add"           android:layout_width="70dp"           android:layout_height="70dp"           android:layout_margin="0.5dp"           android:layout_weight="1"           android:background="#f99011"           android:text="+"            />                 </LinearLayout>      <LinearLayout        android:layout_width="288dp"       android:layout_height="70dp"       android:layout_marginTop="0.5dp"       android:orientation="horizontal"       >       <Button           android:id="@+id/btn0"           android:layout_width="0dp"           android:layout_height="match_parent"           android:layout_weight="2"           android:layout_margin="0.5dp"           android:background="#C3C4C5"           android:text="0"            />       <Button           android:id="@+id/point"          android:layout_width="0dp"           android:layout_height="match_parent"           android:layout_weight="1"           android:layout_margin="0.5dp"           android:background="#C3C4C5"           android:text="."            />              <Button           android:id="@+id/equal"           android:layout_width="0dp"           android:layout_height="match_parent"           android:layout_weight="1"           android:layout_margin="0.5dp"           android:background="#f99011"           android:text="="            />                 </LinearLayout>               </LinearLayout>

package example.ioscalculator;import javax.security.auth.PrivateCredentialPermission;import android.os.Bundle;import android.R.integer;import android.app.Activity;import android.bluetooth.BluetoothAdapter.LeScanCallback;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class MainActivity extends Activity  {//数字键private Button b0;private Button b1;private Button b2;private Button b3;private Button b4;private Button b5;private Button b6;private Button b7;private Button b8;private Button b9;//功能键private Button pt;private Button add;private Button sub;private Button mul;private Button div;private Button clear;private Button per;private Button swt;private Button equal;//显示private EditText led;String num1 = "";String num2 = "";double num3 =  0;String result = "";String sign = "";    int mark = 0;    boolean flag =true;      boolean dotmark = true;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);b0 = (Button) findViewById(R.id.btn0);b1 = (Button) findViewById(R.id.btn1);b2 = (Button) findViewById(R.id.btn2);b3 = (Button) findViewById(R.id.btn3);b4 = (Button) findViewById(R.id.btn4);b5 = (Button) findViewById(R.id.btn5);b6 = (Button) findViewById(R.id.btn6);b7 = (Button) findViewById(R.id.btn7);b8 = (Button) findViewById(R.id.btn8);b9 = (Button) findViewById(R.id.btn9);pt  = (Button) findViewById(R.id.point);add = (Button) findViewById(R.id.add);sub = (Button) findViewById(R.id.sub);mul = (Button) findViewById(R.id.mul);div = (Button) findViewById(R.id.div);per = (Button) findViewById(R.id.per);equal = (Button) findViewById(R.id.equal);swt  = (Button)findViewById(R.id.swt);led = (EditText) findViewById(R.id.led);clear = (Button) findViewById(R.id.clear);//设置监听b0.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "0";led.setText(num1);}else if(mark == 1){num2 = num2 + "0";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "0";led.setText(num1 + sign + num2);}}});b1.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "1";led.setText(num1);}else if(mark == 1){num2 = num2 + "1";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "1";led.setText(num1 + sign + num2);}}});b2.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "2";led.setText(num1);}else if(mark == 1){num2 = num2 + "2";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "2";led.setText(num1 + sign + num2);}}});b3.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "3";led.setText(num1);}else if(mark == 1){num2 = num2 + "3";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "32";led.setText(num1 + sign + num2);}}});b4.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "4";led.setText(num1);}else if(mark == 1){num2 = num2 + "4";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "4";led.setText(num1 + sign + num2);}}});b5.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "5";led.setText(num1);}else if(mark == 1){num2 = num2 + "5";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "5";led.setText(num1 + sign + num2);}}});b6.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "6";led.setText(num1);}else if(mark == 1){num2 = num2 + "6";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "6";led.setText(num1 + sign + num2);}}});b7.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "7";led.setText(num1);}else if(mark == 1){num2 = num2 + "7";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "7";led.setText(num1 + sign + num2);}}});b8.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "8";led.setText(num1);}else if(mark == 1){num2 = num2 + "8";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "8";led.setText(num1 + sign + num2);}}});b9.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(mark==0){num1 = num1 + "9";led.setText(num1);}else if(mark == 1){num2 = num2 + "9";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + "9";led.setText(num1 + sign + num2);}}});add.setOnClickListener(new OnClickListener(){public void onClick(View v){if(flag){sign = "+";mark++;flag = false;dotmark = true;}}});sub.setOnClickListener(new OnClickListener(){public void onClick(View v){if(flag){sign = "-";mark++;flag = false;dotmark = true;}}});mul.setOnClickListener(new OnClickListener(){public void onClick(View v){if(flag){sign = "*";mark++;flag = false;dotmark = true;}}});div.setOnClickListener(new OnClickListener(){public void onClick(View v){if(flag){sign = "/";mark++;flag = false;dotmark = true;}}});swt.setOnClickListener(new OnClickListener() {public void onClick(View v) {if(flag){if(num1 == ""){led.setText("-" + "0");}else if(Double.parseDouble(num1)>0){num1 = String.valueOf(0 - Double.parseDouble(num1));led.setText(num1);}else if(Double.parseDouble(num1)<0){num1 = String.valueOf(0 - Double.parseDouble(num1));led.setText(num1);}}}});per.setOnClickListener(new OnClickListener(){public void onClick(View v){if(flag){sign = "%";mark++;flag = false;dotmark = true;}}});pt.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("C");if(dotmark){if(mark==0){num1 = 0 + ".";led.setText(num1);}else if(mark == 1){num2 = num2 + ".";led.setText(num1 + sign + num2);}else{num1 = String.valueOf(num3);num2 = num2 + ".";led.setText(num1 + sign + num2);}}}});equal.setOnClickListener(new OnClickListener(){public void onClick(View v){flag = true;dotmark = true;if(sign.equals("+")){double x = Double.parseDouble(num1);double y = Double.parseDouble(num2);num3 = x+y;result = String.valueOf(num3);led.setText(result);num2 = "";num1 = result;sign = "";}else if(sign.equals("-")){double x = Double.parseDouble(num1);double y = Double.parseDouble(num2);num3 = x-y;result = String.valueOf(num3);led.setText(result);num2 = "";num1 = result;sign = "";}else if(sign.equals("*")){double x = Double.parseDouble(num1);double y = Double.parseDouble(num2);num3 = x*y;result = String.valueOf(num3);led.setText(result);num2 = "";num1 = result;sign = "";}else if(sign.equals("/")){double x = Double.parseDouble(num1);double y = Double.parseDouble(num2);num3 = x/y;result = String.valueOf(num3);led.setText(result);num2 = "";num1 = result;sign = "";}else if (sign.equals("%")) {double x = Double.parseDouble(num1);num3 = x/100;result = String.valueOf(num3);led.setText(result);num2 = "";num1 = result;sign = "";}}});clear.setOnClickListener(new OnClickListener(){public void onClick(View v){clear.setText("AC");num1 = "";num2 = "";num3 = 0;mark = 0;sign = "";led.setText("0");flag = true;dotmark = true;}});}@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;}}


0 0
原创粉丝点击