想问一下,为什么Android中的页面使用EditText时,可以输入任何字符串唯独数字无法输入?本来是可以的,就很奇怪,百思不得其解?

#Android开发 #Java代码
想问一下,为什么Android中的页面使用EditText时,可以输入任何字符串唯独数字无法输入?本来是可以的,就很奇怪,百思不得其解?
相关代码如下:

  activity_main.xml配置文件页面
        <EditText
                android:id="@+id/et_message"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:hint="请输入sn号" />

  MainActivity.java中
         EditText **et_message**;
         **et_message** = (EditText) findViewById(R.id.et_message);
          //连接数据,根据sn获取
        bt_connect.setOnClickListener(v -> {
            String str = **et_message**.getText().toString();
            String connectStr = JSON.toJSONString(SocketSourcePool.DEV_CONNECT_MAP.get(str));//原始版本
            String connectStr2 = JsonToolsUtil.printJson(connectStr,str);//JSON转义版本
            logger.info("connectStr : {},{}", connectStr, Environment.getRootDirectory());
            tv_newMsg.setText(connectStr2);
        });

具体情况入下图所示,页面上在EditText中可以输入别的字符串,数字无法输入,而我需要输入数字,尝试过将inputType设置为number仅输入数字时也无法输入数字,就很奇怪。

img

希望哪位可以指点一下,不胜感激,谢谢!

上面代码加粗没转义过来,有特殊字符,下面重新贴一下相关代码;

activity.main.xml中
<EditText
                android:id="@+id/et_message"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:hint="请输入sn号" />

           MainActivity.java中
              EditText et_message;
              et_message = (EditText) findViewById(R.id.et_message);
              //连接数据,根据sn获取
        bt_connect.setOnClickListener(v -> {
            String str = et_message.getText().toString();
            System.out.println("==============================================================" + str);
            logger.info("str : {}", str);
            String connectStr = JSON.toJSONString(SocketSourcePool.DEV_CONNECT_MAP.get(str));//原始版本
            String connectStr2 = JsonToolsUtil.printJson(connectStr,str);//JSON转义版本
            logger.info("connectStr : {},{}", connectStr, Environment.getRootDirectory());
            tv_newMsg.setText(connectStr2);
        });
        //体征数据,根据sn获取
        bt_bodyMsg.setOnClickListener(v -> {
            String str = et_message.getText().toString();
            System.out.println("==============================================================" + str);
            logger.info("str : {}", str);
            String bodyMsg = JSON.toJSONString(SocketSourcePool.BODY_QUEUE_MAP.get(str));//原始版本
            String bodyMsg2 = JsonToolsUtil.printJson(bodyMsg,str);//JSON转义版本
            logger.info("bodyMsg : {}", bodyMsg);
            tv_newMsg.setText(bodyMsg2);
        });

真机运行试一下呢?可能和模拟器有关系