自定义 ActionBar

1 . 创建布局 actionbar_custom.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="60dp"
              android:background="#8ab3f4"
              android:orientation="horizontal">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="10dp"
        android:textSize="20sp"
        android:textStyle="bold"
        android:textColor="#ffffff"
        android:text="ListDemo"/>
</LinearLayout>

2 . activity 中设置 actionbar

ActionBar actionBar =  getSupportActionBar();
        View actionbarView = LayoutInflater.from(this).inflate(R.layout.actionbar_custom,null);
        ActionBar.LayoutParams layoutParams = new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT,
                ActionBar.LayoutParams.MATCH_PARENT);
        layoutParams.gravity = Gravity.CENTER_HORIZONTAL |Gravity.CENTER_HORIZONTAL;
        actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
        actionBar.setDisplayShowCustomEnabled(true);
        actionBar.setDisplayShowHomeEnabled(true);
        actionBar.setDisplayShowTitleEnabled(true);
        actionBar.setCustomView(actionbarView, layoutParams);
        Toolbar parent =(Toolbar) actionbarView.getParent();
        parent.setContentInsetsAbsolute(0,0);

3 . actionbar显示返回按钮

getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            this.finish(); // back button
            return true;
    }
    return super.onOptionsItemSelected(item);
}

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 143,053评论 18 613
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 4,211评论 0 17
  • 原文地址:http://www.android100.org/html/201606/06/241682.html...
    AFinalStone阅读 336评论 0 1
  • 经过几个月团队小伙伴的共同努力,产品已经顺利上线了,接下来就需要给客户进行培训了,如何在培训的过程中让客户看到我们...
    347ad42b2992阅读 148评论 2 7
  • 春日落下了秋的叶就如遇见你的那个夏天 日子在阳光的浮影中跳跃你在花丛中追寻蝴蝶的歌唱 你闪亮的毛发伴着你永远的欢笑...
    作者平安阅读 66评论 1 1