我在minHeight
设置为actionBarSize
:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@color/colorPrimary"
android:minHeight="?actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
</android.support.v7.widget.Toolbar>
但是,如果删除此属性,则完全没有区别。工具栏会保留actionBarSize
,即使我删除了菜单并将应用名称设置为空String
,因此工具栏中根本没有显示任何内容。
这里有什么我想念的吗?
答案 0 :(得分:2)
android:minHeight="?attr/actionBarSize"
minHeight
将确保您的工具栏自身的调整大小不会低于?attr/actionBarSize
,无论toolbar
内的内容有多小。
如果toolbar
内没有任何内容且未设置minHeight
,则toolbar
的默认高度为56dp
等于?attr/actionBarSize
因此为minHeight
设置toolbar
是多余的
答案 1 :(得分:1)
这是完全故意的行为,默认情况下,ToolBar
的最小高度设置为操作栏高度。所以,android:minHeight="?actionBarSize"
是冗长的。我无法找到关于此的任何官方文件,但请查看此推文。
答案 2 :(得分:0)
在同时使用android:layout_height="wrap_content"
和android:minHeight="?attr/actionBarSize"
这两个属性时,如果使用较大的图标,工具栏的高度可能会变大。
android:minHeight
可确保您的工具栏不会调整自身小于?attr/actionBarSize
的值。
如果要修改工具栏高度,只需使用
android:layout_height="?attr/actionBarSize"
不需要其他属性。
答案 3 :(得分:0)
尝试这个我喜欢这个它对我有用: -
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
android:theme="@style/AppTheme">
<LinearLayout
.......
/>
</android.support.v7.widget.Toolbar>