[英]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.