Cómo cambiar el color del icono de hamburguesa en el cajón de navegación de diseño de materiales

Estoy siguiendo este ejemplo

http://www.androidhive.info/2015/04/android-getting-started-with-material-design/

y en este ejemplo muestra el ícono de la hamburguesa en blanco, quiero personalizarlo y hacerlo negro, pero no puedo encontrar nada sobre cómo cambiarlo, ¿alguien puede decir cómo personalizarlo?

Manifiesto

            

estilo

     true false @color/colorPrimary @color/colorPrimaryDark @color/colorAccent @drawable/hamburger   

Actividad principal

 public class MainActivity extends AppCompatActivity implements FragmentDrawer.FragmentDrawerListener { private static String TAG = MainActivity.class.getSimpleName(); private Toolbar mToolbar; private FragmentDrawer drawerFragment; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mToolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(mToolbar); getSupportActionBar().setDisplayShowHomeEnabled(true); drawerFragment = (FragmentDrawer) getSupportFragmentManager().findFragmentById(R.id.fragment_navigation_drawer); drawerFragment.setUp(R.id.fragment_navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout), mToolbar); drawerFragment.setDrawerListener(this); // display the first navigation drawer view on app launch displayView(0); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } if(id == R.id.action_search){ Toast.makeText(getApplicationContext(), "Search action is selected!", Toast.LENGTH_SHORT).show(); return true; } return super.onOptionsItemSelected(item); } @Override public void onDrawerItemSelected(View view, int position) { displayView(position); } private void displayView(int position) { Fragment fragment = null; String title = getString(R.string.app_name); switch (position) { case 0: fragment = new HomeFragment(); title = getString(R.string.title_home); break; case 1: fragment = new FriendsFragment(); title = getString(R.string.title_friends); break; case 2: fragment = new MessagesFragment(); title = getString(R.string.title_messages); break; case 3: fragment = new ContactUsFragment(); title = getString(R.string.title_contactus); break; case 4: fragment = new AboutUsFragment(); title = getString(R.string.title_aboutus); break; default: break; } if (fragment != null) { FragmentManager fragmentManager = getSupportFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); fragmentTransaction.replace(R.id.container_body, fragment); fragmentTransaction.commit(); // set the toolbar title getSupportActionBar().setTitle(title); } } 

Para cambiar el color del icono de la hamburguesa, debes abrir la clase “style.xml”, luego prueba este código:

    

Por lo tanto, compruebe la línea @android:color/black . Simplemente cambie su color deseado aquí.

hágalo programáticamente agregue esta línea

 actionBarDrawerToggle.getDrawerArrowDrawable().setColor(getResources().getColor(R.color.white)); 

Anulación de colorControlNormal también funciona.

 @android:color/holo_red_dark 

yourProject / res / values ​​/ styles.xml

en el Style.xml add:

  enter code here : 

1. En Color.xml. #000000

2. En style.xml.

  

3. Luego tu clase de tema principal (Nombre de archivo style.xml). Tengo “AppTheme”.

  

Esto funciona bien cuando configura app: theme = “@ style / MyMaterialTheme”

Si desea cambiar el color solo al ícono de su cajón de navegación, intente esto:

  

directamente en tu activity_drawer.xml

Después de una lucha de 2 horas, este post me ayudó. En el ejemplo del material de Androidhive, cambie el color primario por otro para obtener un nuevo color de barra de acciones. este código a continuación es para obtener una marca de flecha en la barra de acciones y hacer un texto personalizado. Finalmente entendí que el ícono de flecha estará en los archivos de recursos de appcompat, pero el ícono de hamburguesa no está presente en los recursos. si está presente, podemos cambiarlo en tiempo de ejecución

 setSupportActionBar(toolbar); final Drawable upArrow = getResources().getDrawable(R.drawable.abc_ic_ab_back_mtrl_am_alpha); upArrow.setColorFilter(getResources().getColor(R.color.black), PorterDuff.Mode.SRC_ATOP); getSupportActionBar().setHomeAsUpIndicator(upArrow); getSupportActionBar().setTitle(Html.fromHtml("" + "All Addresses" + "")); getSupportActionBar().show(); 

para cambiar el botón de inicio, seguí la respuesta @anandsingh.

 //----------your own toolbar-----------------------------    //-----------Main activity xml, add your own toolbar-----------------------------------------------      //---- In your activity----------------------- toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); //=========================================================================== @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); int color = Color.parseColor("#334412"); final PorterDuffColorFilter colorFilter = new PorterDuffColorFilter(color, PorterDuff.Mode.SRC_ATOP); for (int i = 0; i < toolbar.getChildCount(); i++) { final View v = toolbar.getChildAt(i); if (v instanceof ImageButton) { ((ImageButton) v).setColorFilter(colorFilter); } } return true; }