Android调试时EditText转换的String值在调试器中不可见如何解决
问题根因
- 你获取EditText输入文本的写法存在错误:代码中
String sentName=personName.toString();调用的是EditText控件实例的toString()方法,返回值是控件的对象属性拼接信息,并非用户输入的文本内容,这是调试时无法看到预期字符串值的核心原因。 - 数字能正常获取是因为你调用了
number.getText().toString(),两者的取值逻辑不一致。
修复方案
- 将获取姓名输入的代码修改为如下写法,先通过
getText()获取控件携带的Editable文本对象,再转为字符串:
String sentName = personName.getText().toString();
- 修正代码后重新运行调试,调试器中即可直接查看
sentName对应的用户输入字符串值,查看逻辑和整型值完全一致。
补充调试技巧
如果需要快速验证取值是否正确,也可以添加临时日志打印,在Logcat中过滤对应TAG查看值:
Log.d("INPUT_DEBUG", "输入的姓名为:" + sentName);
内容的提问来源于stack exchange,提问作者Mohammed NAIMI
相关产品推荐
相关产品推荐

