android - 将值从活动发送到其片段
问题描述
我正在尝试将数据从我的活动类发送到其选项卡片段,但在片段适配器中它没有收到任何数据并产生错误 nullPointerException。
这是我的代码
从活动
Intent receivedIntent = getIntent();
String tenant = null;
if ((bundle = receivedIntent.getExtras()) != null) {
tenant = (String) bundle.get("tenant");
}
TabFragment tabFragment = new TabFragment();
bundle.putString("tenant", tenant);
tabFragment.setArguments(bundle);
碎片化
Bundle getTenant = this.getArguments();
if(getTenant != null) {
tenant = getTenant.getString("tenant");
System.out.println("Tab fragment: " + tenant);
}else {
System.out.println("Tab fragment: null");
}
寻呼机适配器
case 0:
TabFragment tabFragment = new TabFragment();
tabFragment.setArguments(bundle);
return tabFragment;
解决方案
在您的片段中执行此操作
if(getArguments() != null) {
tenant = getArguments().getString("tenant");
System.out.println("Tab fragment: " + tenant);
}else {
System.out.println("Tab fragment: null");
}
代替
Bundle getTenant = this.getArguments();
if(getTenant != null) {
tenant = getTenant.getString("tenant");
System.out.println("Tab fragment: " + tenant);
}else {
System.out.println("Tab fragment: null");
}
推荐阅读
- terraform - 使用 Terraform 创建 AWS-OPSWORK-STACK 时出错
- amazon-web-services - AWS RDS DescribeDbInstances - 仅使用 IaaC 将结果列表限制到特定实例
- jenkins - 当詹金斯中有条件时如何给出预定义的参数
- twilio - 我可以发送 Whatsapp 提醒我的客户吗
- c# - 无法通过 ClickOnce 更新我的应用程序
- angular - 无法找到 SyntaxError:“JSON.parse:JSON 数据的第 1 行第 1 列的意外字符”(Angular)
- excel - 如何通过 VBA 脚本通过电子邮件发送整个 excel 文件
- html - 如何制作边框“与点相连的线”并用伪元素重复?
- c++ - 如何修复被推回向量的垃圾值
,当我推送一个包含整数的字符串时 - r - 抑制 R 脚本的输出