清空EditText将字符串返回到name,id

时间:2016-03-24 20:58:37

标签: android android-edittext

我正在尝试获取EditText的字符串,如果它是"我想得到"另外,字符串出现在EditText

android.support.v7.widget.AppCompatEditText{42e33310 VFED..CL .F ....ID40,40-1160,315 #7f0c006f app:id\CalculatorDisplay}
获取它并再次将其提供给EditText之后

这是onClick的一部分,当我按下按钮时其余部分没有处理这个问题,问题出在NoRepeatNumber,因为我测试了当我在TestTV TextView中看到它时我看到了上面的代码

public void onClick(View view) {
    TestTV.setText("enterd ");
    String buttonPressed = ((Button) view).getText().toString();
    PublicButtonPressed = buttonPressed;
    if (DIGITS.contains(buttonPressed)) {
        SinOrNumber=2;
        TestTV.append("numbering");
        // digit was pressed

        if (!Started) {
            mCalculatorDisplay.setText("");
            TestTV.append("\nenterd setText");
        } else {
            TestTV.append("\nenterd setText eslse");
        }

        if (Started) {
            OperationEnded = true;
        }
        if (NumberingEnded) {
            FullNumber = String.valueOf(Number[Ni]);
            Ni++;
            NumberingEnded = false;
            FullCalculation= FullNumber + " ";
            NoRepeatNumber="";
            DisplayCalculations();
        }
        FullNumber = FullNumber + buttonPressed;
        Number[Ni] = Integer.parseInt(FullNumber);
        TestTV.append("\nNumber[" + Ni + "] =" + + Number[Ni] + "\n" + "buttonPressed =" + buttonPressed + "\nFullNumber =" + FullNumber);
        //DisplayCalculations();
        if ("".equals(mCalculatorDisplay)) {

            TestTV.append("\nentered equal\"\"");

            NoRepeatNumber="";
        } else {
            if (NoRepeatNumber == "") {
                NoRepeatNumber = String.valueOf(mCalculatorDisplay);
                TestTV.append("\nNoRepeatNumber =" + NoRepeatNumber);
            }
        }
        if(!NumberingEnded){
            mCalculatorDisplay.setText(NoRepeatNumber + FullNumber);
        }

        if (!Started) {
            Started = true;
        }
        if (userIsInTheMiddleOfTypingANumber) {

            if (buttonPressed.equals(".") && mCalculatorDisplay.getText().toString().contains(".")) {
                // ERROR PREVENTION
                // Eliminate entering multiple decimals
            } else {
                Number[Ni] = Integer.parseInt(FullNumber);
            }
        }
        userIsInTheMiddleOfTypingANumber = true;
    } else {}}

1 个答案:

答案 0 :(得分:1)

致电mCalculatorDisplay.getText().toString()而非String.valueOf(mCalculatorDisplay)

我猜mCalculatorDisplay是一个EditText?

更新:NoRepeatNumber = String.valueOf(mCalculatorDisplay); - 这是问题部分