初识Toolbar
根据图中的资料,可以知道,Toolbar首先是一个ViewGroup,它是用来做APP的标题栏,其中包括5个部分,分别是一个导航按钮(a navigation button)、一个logo图片(a branded logo image)、一个标题和副标题(a title and subtitle)、一个或多个自定义View(one or more custom views)以及一个action menu( an action menu)。看一张效果图
具体使用网上一大堆
标题居中问题和自定义Toolbar
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:gravity="center_vertical"
>
<ImageView
android:id="@+id/iv_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_back"
android:layout_centerVertical="true"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#fff"
android:text="标题"
android:textSize="18sp"
android:layout_centerHorizontal="true"
/>
<EditText
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_centerHorizontal="true"
android:background="@drawable/search_bg"
android:drawableLeft="@drawable/icon_search"
android:padding="5dp"
android:textColorHint="#fff"
android:hint="请输入搜索内容"
android:gravity="center"
android:cursorVisible="false"
/>
</RelativeLayout>
</android.support.v7.widget.Toolbar>
通过这种自定义View方式就可以解决标题居中的问题,看一下效果
写到这里,肯定会有小伙伴问了,这里使用Toolbar有什么用,我自己写一个RelativeLayout或者其他什么布局都能实现,为啥非要用Toolbar呢?这里说一下,使用Toolbar比起传统的自定义布局的好处。
第一、不需要考虑标题栏和系统状态栏匹配的问题,你自己写还得匹配系统状态栏;
第二、就是Toolbar可以和其他的MD设计风格的空间连用,做出比较炫的效果,比如Toolbar+NestScrollView,Toolbar+DrawerLayout + NavigationView等等;
第三、谷歌推荐的控件当然要用(嘿嘿,强行凑三条)。