【发布时间】:2017-01-15 17:02:32
【问题描述】:
我需要在 2 个活动之间传输 User 和 int,当单击列表视图中的项目时会发生这种情况, 活动一:
Intent intent = new Intent(GameActivity.this,ServerActivity.class);
intent.putExtra("serverNum",position);
intent.putExtra("currentUser",currentUser);
Log.d("position", position + "");
startActivity(intent);
finish();
位置默认是用户单击的项目的编号,log.d 确实显示了当前位置,但是当我尝试在活动 2 中获取该 Int 时,它始终为 0。
在活动 2 中:
Log.d("Server Number",getIntent().getExtras().getInt("serverNum")+"");
这个 log.d 总是显示 0。 用户转移得很好。
编辑
我发现它与清单中的 android:launchMode="singleTask" 有关,由于某种原因,活动打开了两次,一次打开良好,一次打开,额外的“serverNum”等于 0,有关如何解决此问题的任何建议?
【问题讨论】:
-
确定你的名字没有拼写错误?最好使用常量来避免这种可能性。
-
很确定有几个原因,1 我没有得到空值,日志显示“D/Server Number: 0”,我检查了 10 次它不是通过应对和粘贴的错字
标签: java android android-studio android-intent extras