1

我用了

setTheme(R.style.Theme_AppCompat);

将我的应用主题设置为更暗。现在我遇到了导航栏中所选项目相对较暗的问题,因此用户几乎看不到它。

有什么我可以在我的风格中使用的东西来获得另一种颜色的选定导航项吗?这是它的图片

这是我的 activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:visibility="visible"
    tools:context="at.mrminemeet.asciimoji.MainActivity">

.....


    <android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:background="?android:attr/windowBackground"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:menu="@menu/navigation"/>

</android.support.constraint.ConstraintLayout>
4

2 回答 2

1

将以下内容添加到您的 BottomNavigationView:

app:itemIconTint="@drawable/bottom_navigation_selector"       
app:itemTextColor="@drawable/bottom_navigation_selector"

在您的可绘制文件夹中,创建一个文件 bottom_navigation_selector.xml 并将其添加到其中:

<?xml version="1.0" encoding="utf-8"?>
<selector 
   xmlns :android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/colorAccent" android:state_checked="true"/>
    <item android:color="@android:color/darker_gray"  android:state_checked="false"/>
</selector>

最后,在您使用此导航栏的每个活动中,将此行添加到 onCreate() 和 onResume()

bottomNavigationView.setSelectedItemId(R.id.item);
于 2018-03-01T13:07:18.137 回答
0

您可以为您的 BottomNavigationView 指定BottomNavigationView_itemBackground属性,您可以将选择器设置为具有不同颜色的背景,用于正常和选定状态

于 2018-03-01T12:48:30.583 回答