襁壮鸢 发表于 2025-6-3 11:54:20

安卓开发踩坑记录_获取EditText的text引发的空指针问题

先看一下我们想要实现的效果:

 
先看一下,下面错误的写法
//界面A的button点击后的代码
public void A(View v)

{

   EditText text=(EditText)findViewById(R.id.text);

    text.getText().toSting();


    看着代码逻辑好像没有任何问题,其实这样会导致EditText报错,空指针的问题。
造成这个问题的原因是findViewById()这个方法默认是从A界面中来获取ID,而我们的EditText在另外一个界面中,当然获取不到EditText的内容啦。
https://img2024.cnblogs.com/blog/1522721/202506/1522721-20250603124135232-1094121036.png
 
解决办法:使用View.inflate()方法
代码逻辑:
1、首先使用View.inflate()这个方法加载我们另外一个界面的xml文件到变量中
2、接着在从变量中获取ID,然后就可以获得内容了。
实现代码:
public void A(View v)

{

View b = View.inflate(MainActivity.this,R.layout.B,null)

EditText text = (EditText)b.findViewById(R.id.edit)

String ttext=text.getText().toString();

Toast.makeText(getApplicationContext(),ttext,2000).show();


这样就能获取到另外一个xml中的EditText的内容了

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

宇文之 发表于 2025-10-9 05:01:10

感谢分享,学习下。

指陡 发表于 2025-10-25 00:47:01

前排留名,哈哈哈

钤凑讪 发表于 2025-11-24 13:27:05

感谢发布原创作品,程序园因你更精彩

愿隙 发表于 2025-12-6 08:21:26

前排留名,哈哈哈

颖顿庐 发表于 2025-12-12 17:13:43

感谢分享,学习下。

东郭欣然 发表于 2025-12-15 14:42:13

用心讨论,共获提升!

阎一禾 发表于 2025-12-25 02:10:10

用心讨论,共获提升!

酒跚骼 发表于 2025-12-31 15:17:19

喜欢鼓捣这些软件,现在用得少,谢谢分享!

宿遘稠 发表于 2026-1-10 09:28:01

感谢分享,学习下。

告陕无 发表于 2026-1-17 22:48:20

新版吗?好像是停更了吧。

捐催制 发表于 2026-1-18 14:23:27

收藏一下   不知道什么时候能用到

埤兆 发表于 2026-1-18 17:46:36

谢谢楼主提供!

涂流如 发表于 2026-1-21 08:56:52

前排留名,哈哈哈

汤流婉 发表于 2026-1-22 11:53:01

谢谢分享,辛苦了

申屠梓彤 发表于 2026-1-25 08:49:40

这个有用。

挚魉 发表于 2026-1-29 05:23:44

这个有用。

户烫擞 发表于 2026-2-1 14:44:27

新版吗?好像是停更了吧。

押疙 发表于 2026-2-3 04:46:47

收藏一下   不知道什么时候能用到

盗衍 发表于 2026-2-6 09:36:51

收藏一下   不知道什么时候能用到
页: [1] 2
查看完整版本: 安卓开发踩坑记录_获取EditText的text引发的空指针问题