为了账号安全,请及时绑定邮箱和手机立即绑定

求大神帮忙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("");
        }
    }
}

跪求大神解答

正在回答

4 回答

可以打个包,把整个工程丢过来,我来给你调试一下。

0 回复 有任何疑惑可以回复我~
#1

晨心 提问者

非常感谢!
2016-01-27 回复 有任何疑惑可以回复我~

加操作数的时候没有加空格是“ ”不是“”

0 回复 有任何疑惑可以回复我~
  1. 还是没办法。。。。你能不能帮我调试看看???

0 回复 有任何疑惑可以回复我~

大致看下来,没啥问题啊。你调试一下,看看能不能进入到getResult这个方法里面?

0 回复 有任何疑惑可以回复我~
#1

晨心 提问者

好的,我试试
2016-01-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第一门课(入门篇)
  • 参与学习       312506    人
  • 解答问题       4931    个

想快速掌握Android应用开发基础,选择学习这门课程就对了。

进入课程

求大神帮忙111

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号