EditText setInputType(InputType.TYPE_CLASS_NUMBER); 不工作

Bal*_*fas 2 keyboard android numeric android-edittext

我尝试使用create one editText只接收数字(只显示数字键盘).在nexus 7上没有发生:X

这是我的代码:

    EditText edit = new EditText(context);
    edit.setText(value);
    edit.setTextSize(16);
    edit.setTextColor(getResources().getColor(R.color.blue));
    edit.setInputType(InputType.TYPE_CLASS_NUMBER
            | InputType.TYPE_NUMBER_FLAG_DECIMAL);
    edit.addTextChangedListener(new TextWatcher() {

        @Override
        public void afterTextChanged(Editable s) {
            elem.setValue(s.toString());
        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before,
                int count) {
        }
    });
Run Code Online (Sandbox Code Playgroud)

你能帮助我吗?

编辑:

我将此EditText添加到LinearLayout,如下所示:

    myLinearLayout.addView(edit);
Run Code Online (Sandbox Code Playgroud)

小智 8

试试这个会对你有所帮助

改变,而不是这条线

edit.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);
Run Code Online (Sandbox Code Playgroud)

改变如下

edit.setRawInputType(InputType.TYPE_CLASS_NUMBER |InputType.TYPE_NUMBER_FLAG_DECIMAL);
Run Code Online (Sandbox Code Playgroud)