工具栏导航图标不能居中

时间:2015-12-02 04:43:16

标签: android material-design android-toolbar scaletype

我想设置工具栏的导航图标,并解决默认情况下图标不在内部的问题:

enter image description here

,代码是:

    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:当然我尝试了不同大小的图标 24dp 32dp 我知道我可以在工具栏中添加自定义布局或自定义布局(这是我写的Linearlayout)

enter image description here

但我不知道为什么我不能像以前一样设置导航图标,它会自动居中......我想也许我应该更改主题或在属性中定义类似navigationButttonStyle的东西...... 。

3 个答案:

答案 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文件夹中,它不会被自动调整为工具栏中的中心位置;