我已经阅读(或尝试)了这里的所有内容,但我无法在两个片段之间传递简单的整数值。
我的代码很简单
片段1
Bundle n = new Bundle();
n.putInt("Id", 1); // test value
NavController navController = Navigation.findNavController(getActivity(), R.id.nav_host_fragment_content_main);
navController.navigate(R.id.serviceDetailFragment, n);
片段2
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle b = getArguments();
if (b != null) {
`enter code here`serviceId = b.getInt("Id");
}
}
但是b已经是NULL(在片段1中,它被正确地intantiated并且在int i中值被设置为a)。即1或2)
2条答案
按热度按时间nwwlzxa71#
片段1(发送数据):
从Fragment 2中删除onCreate方法,并将其替换为以下onCreateView方法:
ep6jt1vc2#
声明全局变量,然后使用它。就像这样
主要活动。java**
分片1
碎片2