Toolbar menu 遇到的问题

1、改变更多icon的颜色为白色:



设置theme为这个即可。

2、toolbar 设置返回箭头:

setSupportActionBar(toolbar);

 getSupportActionBar().setDisplayHomeAsUpEnabled(true);

改变返回箭头的图标:



 toolbar.setNavigationIcon(R.mipmap.ic_launcher);

3、toolbar 返回箭头监听:

  @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if(item.getItemId() == android.R.id.home){
            finish();
            return true;
        }
        return super.onOptionsItemSelected(item);
    }


4、不显示默认的title:

 getSupportActionBar().setDisplayShowTitleEnabled(false);

5、设置标题:

getSupportActionBar().setTitle("记录");

设置menu的位置:

style.xml

 
    
toolbar:


转载于:http://blog.csdn.net/major_out/article/details/50933016
最近项目中需要使用到Toolbar,然后在使用optionMenu的时候,需要在选项中显示图标.但是在网上找了比较多的资料,都没有办法解决问题.最后在stackOverflow上找到了解决方案..所以这里班门弄斧一下.
解决方案的环境是: SDK version API 22,模拟器 genymotion.一个亲测可行的方案是在需要用到菜单的界面(即重写onCreateOptionsMenu这个方法的界面)重写下面这个方法.
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    if(menu != null){
        if(menu.getClass().getSimpleName().equals("MenuBuilder")){
            try{
                Method m = menu.getClass().getDeclaredMethod(
                        "setOptionalIconsVisible", Boolean.TYPE);
                m.setAccessible(true);
                m.invoke(menu, true);
            }
            catch(NoSuchMethodException e){}
            catch(Exception e){}
        }
    }
    return super.onPrepareOptionsMenu(menu);
}
将上面部分的代码复制到工程中,即可解决问题.

你可能感兴趣的:(常见问题)