2017-06-01 86 views
3

我有这个BottomNavigationView库问题https://github.com/ittianyu/BottomNavigationViewEx底部导航视图图标的颜色不正确显示

我在这个XML文件中规定的颜色不正确显示

color_state.xml

<?xml version="1.0" encoding="utf-8"?> 

    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item android:color="@android:color/black" android:state_checked="true" android:alpha="1"/> 
     <item android:color="#bdbdbd" android:state_checked="false" /> 
    </selector> 

正如你所看到的,我已经设置了state_checked = true颜色为黑色,而是它看起来像this

同样发生在state_checked = false, 任何身体知道如何解决这个

这里是BottomNavigation代码:

<com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx 
     android:layout_width="match_parent" 
     android:layout_height="60dp" 
     app:menu="@menu/navigation_view_menu" 
     app:itemIconTint="@drawable/color_state" 
     android:id="@+id/bottomnav" 
     app:layout_constraintBottom_toBottomOf="parent" 
     app:layout_constraintStart_toStartOf="parent" 
     android:layout_marginStart="0dp" 
     android:layout_marginEnd="0dp" 
     app:layout_constraintEnd_toEndOf="parent" 
     app:itemBackground="@android:color/transparent" 
     app:itemTextColor="@drawable/state" 
     android:background="@android:color/white" 

     > 



    </com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx> 
+0

你最终得到它的工作吗?针对菜单中不在state_checked(state_checked工作正常)中的图标,我面临着同样的问题,使用相同的库,对于KitKat上的API。 – lidkxx

回答

1

itemIconTint应该是彩色的资源没有绘制,应用程序:itemIconTint =“@ drawable/color_state“应该改为app:itemIconTint =”@ color/color_state“

+1

我在res文件夹中创建了一个名为color的目录,并把我的xml放在里面,但它仍然不起作用。 –

+0

你能否提供一个完整的例子 – huangsu

1

对我来说,这是一个非常愚蠢的事情 - 经过几个小时的调试,了解提供@color和@drawabl e和视图的各种状态之间的差异,事实证明,我的layoutlayout-v21文件夹都位于我的res目录中,而我只是在编辑前者。