为什么我的 EditText 框允许使用加号

Why does my EditText box allow usage of plus sign

这实际上是我作业的一部分,我的朋友也做过类似的事情,但这个问题只发生在我身上。这是我的 xml 代码:

<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal|numberSigned"
    android:id="@+id/sheepNumBox"/>

出于某种原因,我可以在 EditText 框中键入“+”,但它不应该,知道为什么吗?

试试这个..

<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:id="@+id/sheepNumBox"/>

添加此代码..

  final EditText editText = findViewById(R.id.sheepNumBox);
    editText.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            String text = editText.getText().toString().trim();
            if (text.contains("+")) {
                text.replace("+", "");
                editText.settext(text);
            }
        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });