我试图从一个Adapter传一个String字符串到一个Activity出现问题,我在Activity获取不到这个数据,不知道问题出在哪里,下面我贴几张图:
图1:把数据给Bundle,debug后发现数据已经在bundel了。
下面是Activity部分---------------------------------------------------------------------------------------
跳转到Activity后就获取不到这个数据了,为什么?谁能给我分析一下?非常感谢!下面是activity的代码部分:
哪里出错了?
intent.putExtras(bundle)和intent.putExtra("key",bundle)是两个不同的操作。
你用的是单参数的,等同于ntent.putExtra("id",item.getId())所以取的时候应该直接intent.getStringExtra("id")即可
如下2种写法:
1.
Bundle bundle = new Bundle();
bundle.putString("id", item.getId());
startActivity(new Intent(getActivity(), RvHuaDongActivity.class).putExtras(bundle));//和下面写法一样
// startActivity(new Intent(getActivity(), RvHuaDongActivity.class).putExtra("id", item.getId()));//同上
//取的时候
String id = getIntent().getStringExtra("id");//直接取值
2.
Bundle bundle = new Bundle();
bundle.putString("id", item.getId());
startActivity(new Intent(getActivity(), RvHuaDongActivity.class).putExtra("这是bundle",bundle));//想把bundle存进去,一般用不到
//取的时候
Bundle bd = getIntent().getBundleExtra("这是bundle");
https://download.csdn.net/download/wu_wxc/9300871
你第二个activity获取bundle的方法错了,应该是这个:
Bundle bundle=intent.getExtras();
getIntent().getBundleExtra("id")修改为getIntent().getExtras()