选择框的底栏布局?

时间:2018-02-24 06:10:22

标签: android android-layout android-xml android-menu bottomnavigationview

我正在开发一个Android应用程序。

我开发了这个东西

enter image description here

但是我需要像这样在所选菜单项后面开发一个框。

我需要

enter image description here

我希望你帮助我发展这个。

这是我的代码

    <?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    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"
    tools:context="project.andromeeda.testproject.MainActivity">
<FrameLayout
    android:id="@+id/replace"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

</FrameLayout>

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginEnd="0dp"
        android:layout_marginStart="0dp"
        android:background="#ddd"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:menu="@menu/navigation"
        app:itemBackground="@drawable/list"
        app:itemTextColor="@color/grey"/>

</android.support.constraint.ConstraintLayout>

现在它只显示没有文字或图标的背景颜色。

1 个答案:

答案 0 :(得分:0)

只需将selector drawable添加到xml中的app:itemBackground即可。

以下是一个例子。

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

Inxml。

<android.support.design.widget.BottomNavigationView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:itemBackground="@drawable/item_selector"
    ></android.support.design.widget.BottomNavigationView>

根据需要修改选择器。并制作多个选择器。对于下面的API21内部可绘制的正常。上面的API21为drawable-v21。