私にとって、ここSOに投稿されたソリューションはどれも機能しませんでした。なぜ、いつホーム アイコンが設定されるのかを調べるために、サポート ライブラリの内部を調べる必要がありましたが、いくつかのことに気付きました。主な観察事項は、アイコンがこの関数で設定されていることです。
android.support.v7.widget.Toolbar#setNavigationIcon(android.graphics.drawable.Drawable)
ライン上
mNavButtonView.setImageDrawable(icon);
私と同じ問題に直面していて、提案された解決策がどれも機能しない場合 (テーマを設定する、ツールバーで setNavigationIcon を呼び出そうとする、Actionbar で setHomeAsUpIndicator を呼び出すなど)、上記の関数を見つけてそこにブレークポイントを配置することをお勧めします。次に、関数がいつ呼び出されたかを確認し、アイコンを設定する最後の関数呼び出し (Android Studio のフレーム ウィンドウから) を特定できます。私にとっては、ナビゲーションドロワーを同期するこのアクティビティライフサイクルメソッドでした:
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
mDrawerToggle.syncState();
mToolbar.setNavigationIcon(R.drawable.ic_hamburger);
}
最後の行を追加するだけでうまくいきました。