首页>代码>基于安卓客户端的计算器小实例>/Jisuanqi45/src/com/jmi/Jisuanqi/MainActivity.java
package com.jmi.Jisuanqi;
import java.text.DecimalFormat;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
	private Button btn_1, btn_2, btn_3, btn_4, btn_5, btn_6, btn_7, btn_8,  
    btn_9, btn_0, btn_jia, btn_jian, btn_dengyu, btn_clear, btn_chuyi,  
    btn_chengyi, btn_dian; //各个按钮  
private EditText et_show; //显示输入数字和结果  
public int flag = 0;  //为判断是加减乘除四种运算中的哪一种设定的标志位  
private String text1 = "0",  //获得输入的第一个数  
    text2 = "0";         //获得输入的第二个数  

@Override  
protected void onCreate(Bundle savedInstanceState) {  
super.onCreate(savedInstanceState);  
setContentView(R.layout.main);  
setTitle("计算器");  
//获得各个控件  
et_show = (EditText) findViewById(R.id.et_show);  
btn_0 = (Button) findViewById(R.id.btn_0);  
btn_1 = (Button) findViewById(R.id.btn_1);  
btn_2 = (Button) findViewById(R.id.btn_2);  
btn_3 = (Button) findViewById(R.id.btn_3);  
btn_4 = (Button) findViewById(R.id.btn_4);  
btn_5 = (Button) findViewById(R.id.btn_5);  
btn_6 = (Button) findViewById(R.id.btn_6);  
btn_7 = (Button) findViewById(R.id.btn_7);  
btn_8 = (Button) findViewById(R.id.btn_8);  
btn_9 = (Button) findViewById(R.id.btn_9);  
btn_jia = (Button) findViewById(R.id.btn_jia);  
btn_jian = (Button) findViewById(R.id.btn_jian);  
btn_chengyi = (Button) findViewById(R.id.btn_chengyi);  
btn_chuyi = (Button) findViewById(R.id.btn_chuyi);  
btn_dengyu = (Button) findViewById(R.id.btn_dengyu);  
btn_clear = (Button) findViewById(R.id.btn_clear);  
btn_dian = (Button) findViewById(R.id.btn_dian);  
//设置监听器  
/*
btn_0.setOnClickListener((OnClickListener) this);  
btn_1.setOnClickListener((OnClickListener) this);  
btn_2.setOnClickListener((OnClickListener) this);  
btn_3.setOnClickListener((OnClickListener) this);  
btn_4.setOnClickListener((OnClickListener) this);  
btn_5.setOnClickListener((OnClickListener) this);  
btn_6.setOnClickListener((OnClickListener) this);  
btn_7.setOnClickListener((OnClickListener) this);  
btn_8.setOnClickListener((OnClickListener) this);  
btn_9.setOnClickListener((OnClickListener) this);  
btn_clear.setOnClickListener((OnClickListener) this);  
btn_jia.setOnClickListener((OnClickListener) this);  
btn_jian.setOnClickListener((OnClickListener) this);  
btn_chengyi.setOnClickListener((OnClickListener) this);  
btn_chuyi.setOnClickListener((OnClickListener) this);  
btn_dian.setOnClickListener((OnClickListener) this);  
btn_dengyu.setOnClickListener((OnClickListener) this);  
*/
}  

public void onClick(View arg0) {  
// TODO Auto-generated method stub  
switch (arg0.getId()) {  
case R.id.btn_0:  
    et_show.append("0");  
    break;  
case R.id.btn_1:  
    et_show.append("1");  
    break;  
case R.id.btn_2:  
    et_show.append("2");  
    break;  
case R.id.btn_3:  
    et_show.append("3");  
    break;  
case R.id.btn_4:  
    et_show.append("4");  
    break;  
case R.id.btn_5:  
    et_show.append("5");  
    break;  
case R.id.btn_6:  
    et_show.append("6");  
    break;  
case R.id.btn_7:  
    et_show.append("7");  
    break;  
case R.id.btn_8:  
    et_show.append("8");  
    break;  
case R.id.btn_9:  
    et_show.append("9");  
    break;  

case R.id.btn_dian:  
    et_show.append(".");  
    break;  
case R.id.btn_jia:  
	
    flag = 1;  
    text1 = et_show.getText().toString();  
    et_show.setText("");  
    break;  
case R.id.btn_jian:  
	
    flag = 2;  
    text1 = et_show.getText().toString();  
    et_show.setText("");  

    break;  
case R.id.btn_chengyi:  
	
    flag = 3;  
    text1 = et_show.getText().toString();  
    et_show.setText("");  

    break;  
case R.id.btn_chuyi:  
    flag = 4;  
    text1 = et_show.getText().toString();  
    et_show.setText("");  

    break;  
case R.id.btn_dengyu: 
	
    switch (flag) {  
    case 0:  
        // et_show.setText(text1);  
        et_show.append("0");  
        Log.d("text1", text1);  
        Log.d("text2", text2);  
        break;  
    case 1:  
        text2 = et_show.getText().toString();  
        Double res = Double.parseDouble(text1)  
                + Double.parseDouble(text2);  
        // et_show.setText("flag=1");  
        CharSequence r = res.toString();  
        DecimalFormat df = new DecimalFormat("#.00");
        String stres = df.format(res);
        
        et_show.setText(stres + "");  
        Log.d("text1", text1);  
        Log.d("text2", text2);  
        Log.d("res", res.toString());  
        break;  
    case 2:  
        text2 = et_show.getText().toString();  
        Double res2 = (Double.parseDouble(text1) - Double  
                .parseDouble(text2));  
        CharSequence r2 = res2.toString();  
        DecimalFormat df2 = new DecimalFormat("#.00");
        String stres2 = df2.format(res2);
        et_show.setText(stres2 + "");  
        Log.d("text1", text1);  
        Log.d("text2", text2);  
        Log.d("res", res2.toString());  
        // et_show.setText("flag=2");  
        break;  
    case 3:  

        text2 = et_show.getText().toString();  
        Double res3 = Double.parseDouble(text1)  
                * Double.parseDouble(text2);  
        // et_show.setText("flag=3");  
        CharSequence r3 = res3.toString();   
        DecimalFormat df3 = new DecimalFormat("#.00");
        String stres3 = df3.format(res3);
        et_show.setText(stres3 + "");  
        Log.d("text1", text1);  
        Log.d("text2", text2);  
        Log.d("res", res3.toString());  
        break;  
    case 4:  
        text2 = et_show.getText().toString();  
        Double res4 = Double.parseDouble(text1)  
                / Double.parseDouble(text2);  
        // et_show.setText("flag=4");  
        CharSequence r4 = res4.toString();  
        DecimalFormat df4 = new DecimalFormat("#.00");
        String stres4 = df4.format(res4);
        et_show.setText(stres4 + "");  
        Log.d("text1", text1);  
        Log.d("text2", text2);  
        Log.d("res", res4.toString());  
        break;  

    default:  
        break;  
    }  
    break;  
case R.id.btn_clear:  
    flag = 0;  
    text1 = "0";  
    text2 = "0";  
    et_show.setText("");  
    break;  
default:  
    break;  
}  
}  

}
最近下载更多
小妹妹  LV7 2023年6月9日
gch666  LV6 2023年6月2日
海棠花瘦  LV9 2023年5月30日
一只shy咩咩  LV2 2023年5月27日
YiyiiiRTRTH  LV1 2022年11月23日
2310573421  LV7 2022年5月28日
y2249310131  LV1 2022年5月27日
呀呀呀呀呀呀呀  LV2 2022年3月29日
Asenming  LV1 2021年12月1日
李林123456  LV1 2021年11月26日
最近浏览更多
2636804923  LV6 6月19日
咩咩咩咩咩  LV2 6月17日
2010160433  LV3 2023年11月21日
Mhdpig  LV3 2023年11月18日
小妹妹  LV7 2023年6月9日
gch666  LV6 2023年6月2日
暂无贡献等级
海棠花瘦  LV9 2023年5月30日
111112222333312131  LV4 2023年5月30日
卡布琪洛  LV4 2023年5月28日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友