在 GridLayout 中创建自定义删除键

Creating a Custom Delete Key in GridLayout

我有一个在 GridLayout 设计中创建的键盘,我正在寻找一种方法来创建 delete/backspace 键作为按钮之一。

我的按钮代码是这样的:

one.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
           digits += "1 ";
           Display.setText(digits);
       }
   });
   two.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
           digits += "2 ";
           Display.setText(digits);
       }
   });
   .
   .
   .
   nine.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
           digits += "9 ";
           Display.setText(digits);
       }
   });

其中 digits 是一个带有初始空白值的字符串。在这种情况下创建退格键的最佳方法是什么?我试过这样的事情:

delete.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
           digits += "\b";
           Display.setText(digits);
       }
   });

但是没用。有什么建议吗?

你所要做的就是从字符串中删除最新的字符 "digits":

public void onClick(View v) {
    if (digits.length() != 0) {
        digits = digits.substring(0, digits.length() - 1);
        Display.setText(digits);
    }
}