25

私は現在Androidアプリに取り組んでいます。アクションバーのアプリアイコンを使用して、「ホーム」アクティビティに移動したいと思います。このページで、必要なのは を追加onOptionsItemSelectedして id を探すことだけだと読みましたandroid.R.id.home

これは、アプリ アイコンを押して に戻るアクティビティに実装したコードですHomeActivity

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch(item.getItemId()) {
    case android.R.id.home:
        Intent intent = new Intent(this, HomeActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

しかし、何も起こりません。デバッグ時に、アイコンをクリックしてもまったくトリガーされないことがわかりますonOptionsItemSelected()。どこかのアイコンで何かをしなければなりませんか? 今のところ、それはすべてデフォルトで、AndroidManifest.xml

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
4

3 に答える 3

38

API レベル 14 以降を対象とするパッケージの場合、次の呼び出しによってホーム ボタンを有効にする必要があります。setHomeButtonEnabled()

onCreate で、次を追加します。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
    getActionBar().setHomeButtonEnabled(true);
}
于 2012-01-21T13:02:17.820 に答える
4

Android の新しいサポート アクションバー ( AppCompat ) を使用する場合は、両方の呼び出しを行う必要があります。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
    getActionBar().setHomeButtonEnabled(true);
}
getSupportActionBar().setHomeButtonEnabled(true);
于 2013-11-11T17:07:49.837 に答える