当前位置: 代码迷 >> java >> 从PreferenceActivity返回后,屏幕变暗并需要额外的后退按钮按下
  详细解决方案

从PreferenceActivity返回后,屏幕变暗并需要额外的后退按钮按下

热度:128   发布时间:2023-07-27 09:43:35.0

我在我的应用程序中添加了一个简单的PreferenceActivity,可通过上下文菜单按钮访问。 我可以很好地访问PreferenceActivity,并且其中的一切都可以工作。 问题是当您通过后退按钮离开PreferenceActivity时。 该应用程序的主要活动重新出现,但随后整个屏幕变暗,几乎就像弹出一个对话框或上下文菜单永远不会消失,但没有。 如果不按后退按钮或菜单按钮,则无法与后台的ListActivity进行交互。

有人想知道为什么会这样吗?

主要活动:


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    // get the inflater
    MenuInflater inflater = getMenuInflater();
    // inflate
    inflater.inflate(R.menu.main_menu, menu);
    return true;
}

@Override public boolean onOptionsItemSelected(MenuItem item) { // Handle item selection; switch(item.getItemId()) { case R.id.refresh: refresh(); return true; case R.id.subreddits: startActivity(new Intent(this, Prefs.class)); return true; default: return super.onOptionsItemSelected(item); } }

PreferenceActivity:


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.subreddit_preferences);
}

我不会这样写onCreateOptionsMenu() 而不是先调用super然后返回true ,而是将链的结果返回给超类。

如果这没有帮助, 使用PreferenceActivity ,并且不会遇到您引用的问题。 看看你能否推断出你的代码与我所拥有的不同之处。

我有同样的问题,我的问题是我在“设置”菜单项下放了一个子菜单。

删除它修复了问题。

  相关解决方案