[英]Opening new activity from menu
我正在为Android编写应用程序,但遇到了一些问题。 我有主要活动和设置活动。 我想从主活动菜单开始设置活动。 我有以下代码可以做到这一点:
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.menu_preferences:
Intent j = new Intent(getApplicationContext(), SettingsActivity.class);
startActivity(j);
break;
default:
break;
}
return super.onOptionsItemSelected(item);
}
但这不起作用。 当我尝试时,我有logcat:
Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@40a254c8
并且未显示设置活动。 我不知道该怎么办...
替换此行
return super.onOptionsItemSelected(item);
与这个
return true;
在清单文件中添加SettingsActivity。
<activity android:name="yourmainpackagename.SettingsActivity " />
希望这可以帮助。
在清单中声明SettingsActivity。 还可以使用MainActivity.this代替getApplicationContext()。 这应该有所帮助。
首先,您不应该使用getApplicationContext作为上下文。 应该是这样的:
Intent j = new Intent(Firstclass.this, Secondclass.class);
startActivity(j);
不要忘记在清单中声明Activity并在最后返回true。 希望这可以帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.