Android自做小实验之 计算器_第1张图片自己做的计算器并不是很好。

activity_main.xml  布局文件里的代码为:

                 

MainActivity.class里的代码为:


package com.example.administrator.calculator;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.Button;import android.widget.EditText;public class MainActivity extends ActionBarActivity implements View.OnClickListener {    StringBuffer  sbff = new StringBuffer();    int a=0,b=0,c=0,d=0;    private Button bt1;    private Button bt2;    private Button bt3;    private Button bt4;    private Button bt5;    private Button bt6;    private Button bt7;    private Button bt8;    private Button bt9;    private Button bt10;    private Button bt11;    private Button bt12;    private Button bt13;    private Button bt14;    private Button bt15;    private Button bt16;    private EditText editText;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //初始化        editText = (EditText) findViewById(R.id.abc);        bt1 = (Button) findViewById(R.id.one);        bt2 = (Button) findViewById(R.id.two);        bt3 = (Button) findViewById(R.id.three);        bt4 = (Button) findViewById(R.id.four);        bt5 = (Button) findViewById(R.id.five);        bt6 = (Button) findViewById(R.id.six);        bt7 = (Button) findViewById(R.id.seven);        bt8 = (Button) findViewById(R.id.eight);        bt9 = (Button) findViewById(R.id.nine);        bt10 = (Button) findViewById(R.id.zero);        bt11 = (Button) findViewById(R.id.jia);        bt12 = (Button) findViewById(R.id.jian);        bt13 = (Button) findViewById(R.id.cheng);        bt14 = (Button) findViewById(R.id.chu);        bt15 = (Button) findViewById(R.id.dengyu);        bt16 = (Button) findViewById(R.id.c);        //监听        bt1.setOnClickListener(this);        bt2.setOnClickListener(this);        bt3.setOnClickListener(this);        bt4.setOnClickListener(this);        bt5.setOnClickListener(this);        bt6.setOnClickListener(this);        bt7.setOnClickListener(this);        bt8.setOnClickListener(this);        bt9.setOnClickListener(this);        bt10.setOnClickListener(this);        bt11.setOnClickListener(this);        bt12.setOnClickListener(this);        bt13.setOnClickListener(this);        bt14.setOnClickListener(this);        bt15.setOnClickListener(this);        bt16.setOnClickListener(this);    }    @Override    public void onClick(View v) {        Button bt = (Button) v;        switch (v.getId()) {            case R.id.one:            case R.id.two:            case R.id.three:            case R.id.four:            case R.id.five:            case R.id.six:            case R.id.seven:            case R.id.eight:            case R.id.nine:            case R.id.zero:            case R.id.jia:            case R.id.jian:            case R.id.cheng:            case R.id.chu:                sbff.append(bt.getText());                editText.setText(sbff.toString());                break;            case R.id.dengyu:                String s = sbff.toString();                a = s.indexOf("+");                b = s.indexOf("-");                c = s.indexOf("*");                d = s.indexOf("/");                if(!(a==-1)){                    String m[] = s.split("\\+");                    String[] r =m[0].split("\\.");                    if(r[0]==null){                        a = Integer.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        c = a+b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }else {                        double a = Double.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        double c = a+b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }                }else if(!(b==-1)){                    String m[] = s.split("-");                    String[] r =m[0].split("\\.");                    if(r[0]==null){                        a = Integer.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        c = a-b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }else {                        double a = Double.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        double c = a-b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }                }else if(!(c==-1)){                    String m[] = s.split("\\*");                    String[] r =m[0].split("\\.");                    if(r[0]==null){                        a = Integer.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        c = a*b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }else {                        double a = Double.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        double c = a*b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }                }else if(!(d==-1)){                    String m[] = s.split("/");                    String[] r =m[0].split("\\.");                    if(r[0]==null){                        a = Integer.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        c = a/b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }else {                        double a = Double.valueOf(m[0]);                        b = Integer.valueOf(m[1]);                        double c = a/b;                        s = c+"";                        editText.setText(s);                        sbff = new StringBuffer();                        sbff.append(s);                    }                }//                editText.setText(null);                break;            case R.id.c:                    String s1 = sbff.toString();                    a = s1.length();                    if(a==1){                        sbff = new StringBuffer();                        editText.setText("sb不能再删了");                    }else if(a==0) {                    }else{                        s1 = s1.substring(0,a-1);                        sbff = new StringBuffer();                        sbff.append(s1);                        editText.setText(sbff);                    }                break;        }    }}


更多相关文章

  1. Android Audio代码分析2 - 函数getMinBufferSize
  2. Android实战项目:第一行代码CoolWeather
  3. android apk 升级代码
  4. Android 相机2之常用工具代码(预览方向、预览尺寸、全屏显示、分
  5. [置顶] Android防火墙+流量统计代码
  6. Android应用程序获取ROOT权限代码
  7. android 个人铃声设置代码
  8. android典型代码系列(九)------电话拦截

随机推荐

  1. Android横竖屏切换
  2. Android终于公布源代码
  3. Google Android(安卓)应用程序结构
  4. android中炫酷划屏事件及sqlite全部操作D
  5. Android动态部署五:如何从插件apk中启动Se
  6. Dragger android 的Activity切换动画大全
  7. Android(安卓)菜单(OptionMenu)
  8. android 读取properties文件
  9. Android的StatusBar资料收集
  10. Android开发中RxJava-SQLBrite实时刷新UI