从代码中激活删除键

Activate the delete key from the code

我在 android studio 中有一个代码,在代码中我有一个 EditText

  <EditText
    android:background="#90fff7"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textSize="50dp"
    android:layout_marginTop="90dp"
    android:maxLength="50"
    />

和按钮

       <Button
        android:background="@drawable/ic_if_delete"
        android:layout_gravity="fill"
        android:id="@+id/delete"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="3"
        android:layout_row="0"

        />

我希望当我点击按钮时 - 单击删除键(从默认键盘)的事件将激活。

例如,如果我在编辑文本中单击 my 按钮,第一个字母将被删除,就像我单击默认键盘上的删除键一样

不要让我从字符串中删除最后一个字符,这不是我要找的,我只是在寻找模拟按下删除键的方法

您必须在编辑文本中操作文本

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        int length = editText.getSelectionStart();
        if (length > 0) {
            editText.getText().delete(length - 1, length);
            edittext.setSelection(length-1);
        }
    }
});

android:id="@+id/btn_delete" 上的视图和 android:id="@+id/edit_query"

上的按钮提供 ID

在按钮上设置点击侦听器

 final EditText editQuery = findViewById(R.id.edit_query);
    Button btnDelete = findViewById(R.id.btnDelete);

    btnDelete.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            editQuery.setText(""); // if want to clear all

            String value = editQuery.getText().toString();

            value=value.subString(0,value.length()-1);
            editQuery.setText(value);
        }
    });