簡體   English   中英

從菜單打開新活動

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM