求大神帮忙111
和老师视频教学的代码相同,可等号点下去没有反应,其他的都可以。看了一天了,
package com.example.CalculatorDemo; import android.app.Activity; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.RadioGroup; import android.widget.TextView; public class MyActivity extends Activity implements View.OnClickListener { /** * Called when the activity is first created. */ private EditText T1; 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 point; private Button del; private Button clear; private Button chengfa; private Button chufa; private Button jiafa; private Button jianfa; private Button denghao; private boolean clear_flag = true; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); T1 = (EditText) findViewById(R.id.editText); B0 = (Button) findViewById(R.id.Button0); B1 = (Button) findViewById(R.id.Button1); B2 = (Button) findViewById(R.id.Button2); B3 = (Button) findViewById(R.id.Button3); B4 = (Button) findViewById(R.id.Button4); B5 = (Button) findViewById(R.id.Button5); B6 = (Button) findViewById(R.id.Button6); B7 = (Button) findViewById(R.id.Button7); B8 = (Button) findViewById(R.id.Button8); B9 = (Button) findViewById(R.id.Button9); point = (Button) findViewById(R.id.buttonpoint); del = (Button) findViewById(R.id.ButtonDel); jiafa = (Button) findViewById(R.id.Buttonjiafa); jianfa = (Button) findViewById(R.id.Buttonjianfa); chengfa = (Button) findViewById(R.id.Buttonchengfa); chufa = (Button) findViewById(R.id.Buttonchufa); clear = (Button) findViewById(R.id.Buttonc); denghao = (Button) findViewById(R.id.Buttondenghao); B0.setOnClickListener(this); B1.setOnClickListener(this); B2.setOnClickListener(this); B3.setOnClickListener(this); B4.setOnClickListener(this); B5.setOnClickListener(this); B6.setOnClickListener(this); B7.setOnClickListener(this); B8.setOnClickListener(this); B9.setOnClickListener(this); point.setOnClickListener(this); del.setOnClickListener(this); jianfa.setOnClickListener(this); jiafa.setOnClickListener(this); chengfa.setOnClickListener(this); chufa.setOnClickListener(this); clear.setOnClickListener(this); denghao.setOnClickListener(this); } @Override public void onClick(View v) { String str = T1.getText().toString(); switch (v.getId()) { case R.id.Button0: case R.id.Button1: case R.id.Button2: case R.id.Button3: case R.id.Button4: case R.id.Button5: case R.id.Button6: case R.id.Button7: case R.id.Button8: case R.id.Button9: case R.id.buttonpoint: if(clear_flag){ clear_flag = false; str = ""; T1.setText(""); } T1.setText(str + ((Button)v).getText()); break; case R.id.Buttonc: T1.setText(""); break; case R.id.ButtonDel: if (str!=null&&!str.equals("")) { T1.setText(str.substring(0, str.length() - 1)); } break; case R.id.Buttonchengfa: case R.id.Buttonchufa: case R.id.Buttonjiafa: case R.id.Buttonjianfa: if(clear_flag){ clear_flag = false; str = ""; T1.setText(""); } T1.setText(str + "" + ((Button)v).getText() + ""); break; case R.id.Buttondenghao: getResult(); break; } } private void getResult(){ String exp = T1.getText().toString(); if(exp == null||exp.equals("")){ return; } if(!exp.contains(" ")){ return; } if (clear_flag) { clear_flag = false; return; } clear_flag = true; double result = 0; String s1 = exp.substring(0,exp.indexOf(" ")); String op = exp.substring(exp.indexOf(" ") + 1, exp.indexOf(" ") + 2); String s2 = exp.substring(exp.indexOf(" ") + 3); if (!s1.equals("") && !s2.equals("")){ double d1 = Double.parseDouble(s1); double d2 = Double.parseDouble(s2); if(op.equals("+")){ result = d1 + d2; } else if (op.equals("-")){ result = d1 - d2; }else if (op.equals("×")){ result = d1 * d2; }else if (op.equals("÷")){ if (d2 == 0){ result = 0; }else { result = d1 / d2; } } if(!s1.contains(".") && !s2.contains(".")&&!op.equals("÷")){ int result2 = (int) result; T1.setText(result2 + ""); }else { T1.setText(result + ""); } }else if(!s1.equals("")&&s2.equals("")){ T1.setText(exp); }else if(s1.equals("") && !s2.equals("")){ double d2 = Double.parseDouble(s2); if(op.equals("+")){ result = 0 + d2; } else if (op.equals("-")){ result = 0 - d2; }else if (op.equals("×")){ result = 0; }else if (op.equals("÷")){ result = 0; } if(!s2.contains(".")){ int result2 = (int) result; T1.setText(result2 + " "); }else { T1.setText(result + " "); } } else{ T1.setText(""); } } }
跪求大神解答