我想设置工具栏的导航图标,并解决默认情况下图标不在内部的问题:
,代码是:
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
toolbar.setNavigationIcon(R.drawable.ic_arrow_back_white_48dp);
并且theme.xml是:
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowTranslucentStatus">true</item>
<item name="android:navigationBarColor">@color/colorPrimaryDark</item>
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>
并且布局xml是:
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="@dimen/toolbar_height"
/>
我想我已经尝试了所有我知道但我无法理解它。我曾经设置工具栏的导航图标然后它将在中心内部和现在。任何帮助将节省我的一天!
Eidted:当然我尝试了不同大小的图标 我知道我可以在工具栏中添加自定义布局或自定义布局(这是我写的Linearlayout)
但我不知道为什么我不能像以前一样设置导航图标,它会自动居中......我想也许我应该更改主题或在属性中定义类似navigationButttonStyle的东西...... 。
答案 0 :(得分:0)
我认为你使用的是一个大图像。尝试使用此link
计算出来答案 1 :(得分:0)
我通过继承正确的主题Widget.AppCompat.Toolbar
而不是ThemeOverlay.AppCompat.Dark.ActionBar
来修复此问题,以定义我自己的工具栏样式。
并使用
<item name="toolbarStyle">@style/MyToolBar</item>
设置toolbarStyle
答案 2 :(得分:-1)
好了,现在我终于找出问题所在:与图标大小无关
您应该将图像资源放在相应的文件夹中,如(drawable-xxhdpi,drawable-xhdpi)。如果您不这样做,就意味着您只需将它放在drawable文件夹中,它不会被自动调整为工具栏中的中心位置;