简单的toolbar

//获取toolbar对象是v7的
        tobar = findViewById(R.id.tobar);
        //一定要在第一行
        setSupportActionBar(tobar);
        //设置是否显示主标题
        getSupportActionBar().setDisplayShowTitleEnabled(false);
        //设置标题
        getSupportActionBar().setTitle("title");
        //设置主标题颜色
        tobar.setTitleTextColor(Color.RED);
        //设置子标题及子标题颜色
        tobar.setSubtitle("subtitle");
        tobar.setSubtitleTextColor(Color.RED);
        //设置是否显示左侧的按钮
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        //设置左侧按钮图标
//        tobar.setNavigationIcon();
        //设置logo图标
//        tobar.setLogo();
        //给左侧的按钮添加点击事件
        tobar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //这里处理返回按钮的逻辑
            }
        });
    }
    //toolbar右侧菜单的相关方法
    //注意每一个方法的返回值,点击到源码中看下返回值的意义
    //只会在第一次创建时候调用

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        //初始化我们的的菜单布局文件,添加道menu中
        getMenuInflater().inflate(R.menu.menu_main,menu);//在src创建menu中创建menu_main
        return super.onCreateOptionsMenu(menu);
    }
//item图标是不显示重写
@SuppressLint("RestrictedApi")
@Override
protected boolean onPrepareOptionsPanel(View view, Menu menu) {
    if (menu!=null){
        if (menu.getClass()== MenuBuilder.class){
            try {
                Method m = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);
                m.setAccessible(true);
                m.invoke(menu,true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    return super.onPrepareOptionsPanel(view,menu);
}

menu_main.XML



        

        

你可能感兴趣的:(简单的toolbar)