我有一个 MainActivity,我在 onCreate() 方法中定义了下面的代码。目的是,当 MainActivity 获得额外的 String "EXIT" 然后显示 Toast 消息:
Intent current = getIntent();
if (current !=null && current.getStringExtra("EXIT") != null) {
Toast.makeText(this, "exiting", Toast.LENGTH_LONG).show();
}
此 MainActivity 在某些按钮按下时启动另一个活动“DayOne”,例如:
public void processGo(View v){
Intent i = new Intent(MainActivity.this,DayOne.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
MainActivity.this.startActivity(i);
}
现在我在放置额外的字符串“EXIT”后从“DayOne”返回到 MainActivity。这是我在 onOptionsItemSelected(MenuItem item) 方法中做的:
public boolean onOptionsItemSelected(MenuItem item){
if(item.getTitle().equals("Exit")){
Intent i = new Intent(DayOne.this,MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
i.putExtra("EXIT", "EXIT");
startActivity(i);
finish();
}
return super.onOptionsItemSelected(item);
}
问题是,当从 DayOne 使用额外的字符串“EXIT”调用 MainActivity 时;我没有看到 MainActivity 中定义的 Toast 消息。这里有什么遗漏或错误?
感谢任何帮助。