一个简单的计算器

<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;
	@Override
	protected 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;
			}
		});
	}

	@Override
	public 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;
	}

	

	
	
	
	

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值