跨活动传递信息时出现问题
我正在尝试传递以下信息:
Intent i=new Intent(ctx,SpendingsDetails.class);
extras.putString("SpendingAmount", "1");
extras.putString("SpendingDescription","2");
extras.putString("SpendingDate","3");
i.putExtras(extras);
startActivityForResult(i,1);
获取信息的活动执行以下信息。
spendingAmount=(TextView)findViewById(R.id.spending_Sum);
spendingDetails=(TextView)findViewById(R.id.spending_Details);
Bundle extras=getIntent().getExtras();
if(extras!=null)
{
spendingAmount.setText(extras.getString("SpendingAmount"));
spendingDetails.setText(extras.getString("SpendingDescription"));
}
我收到错误消息,表明应用程序无法在第一个活动屏幕上继续。我做错了什么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
像这样使用
Use like this
您可以直接调用 getStringExtra:
依此类推以获得您需要的其他值。
当然,您也可以先检查该值是否存在:
编辑:就像 Rasel 所说:
我一开始没有看到这一点。
You could just call the getStringExtra directly:
And so on for the other values you need.
Of course you could also do a check to see if the value exists first:
EDIT: Like Rasel said:
I didn't see that at first.
我认为您声明了您的捆绑对象。但不分配内存。那就是你需要添加这段代码。
希望有帮助。
I think you declared your bundle object. But does not allocate the memory. that is you need to add this code.
Hope it helps.
你在哪里声明了额外费用?看看变化。
Where did you declare extras? Look at the change.
请查看 LogCat 以获取异常堆栈跟踪。这是当事情“不起作用”时首先要查看的地方。
Please look into the LogCat for exception stack traces. Thats the first place to look when things "don't work".