You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Fragment传参时getArguments()返回null的问题

解决Fragment传递Arguments为null的问题

嘿,我一眼就发现问题啦!你在第一个Fragment的代码里犯了个很容易踩的小坑:你明明创建了一个带Bundle参数的inf实例,还特意给它设置了Arguments,但在提交Fragment事务的时候,却重新new了一个全新的Inspecciones_fragment对象——这就导致你之前配置好的参数完全没被用到,第二个Fragment自然拿不到Arguments,只能得到null咯。

修正后的第一个Fragment代码:

Inspecciones_fragment inf = new Inspecciones_fragment(); 
Bundle bundle = new Bundle(); 
bundle.putInt("tipo_inspecciones_activity", tag); 
inf.setArguments(bundle); 
// 这里要使用已经设置好参数的inf实例,而不是重新new一个
getFragmentManager().beginTransaction()
    .replace(R.id.flContenedor, inf)
    .addToBackStack(null)
    .commit(); 

为什么之前的代码不行?

你之前的事务里用了new Inspecciones_fragment(),这个新实例和你之前配置参数的inf是完全独立的两个对象,新实例并没有绑定任何Bundle,所以第二个Fragment的getArguments()自然返回null。只要替换成已经设置好参数的inf实例,参数就能正常传递啦。

你的第二个Fragment的代码是没问题的,只要第一个Fragment的传递逻辑正确,就能拿到你想要的tagInspeccion值。

内容的提问来源于stack exchange,提问作者Juan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:37:36