Android - 按下按钮时删除字符

时间:2016-10-21 06:51:06

标签: android android-studio button arraylist

以下是我编码为计算器输入数字的方法。该代码功能齐全,无错误。

我正在试图弄清楚如何编写一个名为backspace的单独方法,一次从用户输入中删除一个字符。

举例说明onClick1如何运作(只是为了清楚地说明我想做什么),如果我输入2+4*6(使用按钮;他们的onClick操作链接到onClick1 }),然后textViewCalcHistExp1会显示文字2+4*6arrayList将包含以下值:[2,+,4,*,6]

我希望backspace能够正常工作,以便点击按钮(与backspace方法相关联),textViewCalcHistExp1的显示现在为2+4*和{{ 1}}现在将包含以下值:arrayList

以下是代码:

[2,+,4,*]

1 个答案:

答案 0 :(得分:2)

你可以这样做:

private void backspace() {
    if (!arrayList.isEmpty()) {
        // removing the last item from the ArrayList
        arrayList.remove(arrayList.size() - 1);
    }

    String string = textViewCalcHistExp1.getText().toString();
    if (string.length() > 0) {
        // removing the last character from the TextView
        textViewCalcHistExp1.setText(string.substring(0, string.length() - 1));
    }
}

您还需要将textViewCalcHistExp1变为实例变量(arrayList已经是),方法是在onClick1()之外声明它。