这是将字符串添加到Extras的方法:
Intent i = new Intent();
i.putExtra("Name", edt_name.getText());
i.putExtra("Description", edt_desc.getText());
i.putExtra("Priority", skb_prior.getProgress());
setResult(RESULT_OK, i);
finish();
这是我在onActivityResult()
函数中尝试提取它们的方法:
String name = data.getStringExtra("Name");
String desc = data.getStringExtra("Description");
int prior = data.getIntExtra("Priority", 50);
但是在第二个代码块后,name
和desc
都是null
,尽管prior
有它正确的值。
此外,在调试器中,我可以看到data.mExtras.mMap
包含所需的字符串,但只有在第一次请求后才会出现。
prior
变量的值是正确的,而不是默认值(50)吗? - Piotr Chojnackiedt_name.getText()
,它返回的不是String
,而是某个继承类,可能是吗? - hotkey