web-dev-qa-db-ja.com

ナビゲーションドロワーのドロワーアイコンを変更できません

前回のAndroid基調講演以降に提供された新しいNavigationDrawerを実装しようとしています。

左上隅のアイコンを押すと、ナビゲーションドロワーが開閉します。

しかし、今でも矢印アイコンが残っていますが、Androidのic_drawerに置き換えました。どうして?

アイコンを指定したコードは次のとおりです。

mDrawerToggle = new ActionBarDrawerToggle(
            this,                 
            mDrawerLayout,         
            R.drawable.ic_drawer, //<-- This is the icon provided by Google itself
            R.string.drawer_open,
            R.string.drawer_close 
            )

ただし、アプリケーションは引き続きsetDisplayHomeAsUpEnabledの標準アイコンで実行されます。

何か案は?

20
user2410644

ナビゲーションドロワーが機能しました。 developer.Android.com の例によって提供される次のメソッドを追加するのを忘れていました:

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);
    // Sync the toggle state after onRestoreInstanceState has occurred.
    mDrawerToggle.syncState();
}

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    mDrawerToggle.onConfigurationChanged(newConfig);
}
48
user2410644

私が同じ問題を抱えていたのは、あなたが設定している場合です

getActionBar().setDisplayShowHomeEnabled(false);

次に、通常のアップアイコンが表示されます。だからそれを使わずに試してみてください

2
Ravi