Цвет фона BottomNavigationView с прозрачностью не работает должным образом - PullRequest
1 голос
/ 16 марта 2020

Я реализовал BottomNavigationView с графиком навигации. При установке цвета solid в Navigation View в качестве фона он работает нормально, но когда я устанавливаю цвет фона с непрозрачностью, он не работает должным образом. image with background color: #0D000000

Вот мой файл gradle:

implementation 'androidx.navigation:navigation-fragment-ktx:2.2.1'
implementation 'androidx.navigation:navigation-ui-ktx:2.2.1'

Навигация. xml

    <?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/bottom_nav"
    app:startDestination="@id/firstBottomNavFragment">

    <fragment
        android:id="@+id/firstBottomNavFragment"
        android:name="com.healthymale.screens.home.fragment.HomeFragment"
        android:label="@string/home" />
    <fragment
        android:id="@+id/secondBottomNavFragment"
        android:name="com.healthymale.screens.home.fragment.ProgramsFragment"
        android:label="@string/programs" />
    <fragment
        android:id="@+id/thirdBottomNavFragment"
        android:name="com.healthymale.screens.home.fragment.TrackingFragment"
        android:label="@string/tracking" />

    <fragment
        android:id="@+id/fourBottomNavFragment"
        android:name="com.healthymale.screens.home.fragment.MoreFragment"
        android:label="@string/more" />

</navigation>

Мой домашний экран xml:

<layout 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"
    tools:context=".screens.home.HomeScreen">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">


        <fragment
            android:id="@+id/nav_host_fragment"
            android:name="androidx.navigation.fragment.NavHostFragment"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            app:defaultNavHost="true"
            app:navGraph="@navigation/navigation" />

        <com.google.android.material.bottomnavigation.BottomNavigationView
            android:id="@+id/bottom_nav_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/black_5"
            app:labelVisibilityMode="labeled"
            app:menu="@menu/menu" />
    </LinearLayout>
</layout>

Ответы [ 2 ]

2 голосов
/ 16 марта 2020

Вы можете использовать любой нарисованный файл для фона, что также поможет в повторном использовании кода и, что самое важное, вы также можете изменить его после компиляции приложения, как мы это делали в изменениях тем

1 голос
/ 16 марта 2020

Я использую этот код для установки прозрачного фона navView. Вы можете изменить цвет и использовать:

navView.setBackgroundColor(ContextCompat.getColor(getApplicationContext(), android.R.color.transparent));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...