Android:返回主要活动问题
在我的主要活动中,我有一个菜单,当选择菜单选项时,会创建一个Intent并启动一个新的活动。当该活动完成时,该过程应根据ActivityLifeCycle返回到主活动及其之前的所有状态。Android:返回主要活动问题
我注意到,当它返回到主要活动时,什么都不可访问,屏幕变暗。当我按下菜单软键时,我只能回到期望的状态。
有没有人遇到过这个问题?反馈将不胜感激! 下面的代码示例:
@Override
protected void onResume(){
super.onResume();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.menu_settings:
return true;
case R.id.menu_decks:
Intent launchDecks = new Intent(this, stackDecks.class);
startActivity(launchDecks);
return true;
case R.id.menu_exit:
this.onDestroy();
this.finish();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您似乎与使用超级混淆。
super.m()用于调用超类方法。
如果继承没有覆盖的方法,然后 super.m()= this.m() 请参阅super.onDestroy
IT方面absoluetly没用覆盖方法M()只是调用超级.m() 查看您的onResume
有时调用super clas方法很有用,它允许您从子类中的代码中受益。例如,这里onCreateMenuOptions被覆盖,你的子类可以从菜单的一些imitialisation代码中受益。
问候, 斯特凡
- 修改了之前的代码super.onDestroy().. -i同意关于onResume()的评论我删除了其中的一行代码,它向Toast小部件显示了一些文本。 –
在第一篇文章中的代码实际上是正确的(我有非常类似的东西)。错误发生在menu.xml res文件中的可能性很大,尽管它膨胀时没有任何问题。检查它在两个地方是完全一致的,并且具有相同的项目。经过数小时的试验,我终于解决了这个问题。
您是否正确实施onStart,onRestart和简历? –
你如何完成第二项活动?你能显示代码吗? –
我的猜测是菜单在返回时仍然因为某些原因而打开。很难说没有看到任何代码。也许你可以尝试关闭它,然后再启动这个意图。 – pumpkee