<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;
}
}