Пробел под нижней панелью навигации

У меня есть розовый зазор между нижней панелью навигации и панелью действий:

Пробел под нижней панелью навигации

Это нижняя панель навигации в формате xml:

<com.google.android.material.bottomnavigation.BottomNavigationView
        android:id = "@+id/bottomNavigationView"
        android:layout_width = "wrap_content"
        android:layout_height = "wrap_content"
        app:backgroundTint = "@drawable/nav_item_background_selector"
        app:itemActiveIndicatorStyle = "@color/white"
        app:itemBackground = "@drawable/nav_item_background_selector"
        app:itemIconTint = "@drawable/nev_item_select"
        app:itemTextColor = "@drawable/nev_item_select"
        app:labelVisibilityMode = "labeled"
        app:layout_constraintBottom_toBottomOf = "parent"
        app:menu = "@menu/bottom_nav" />

Это XML темы:

<style name = "Base.Theme.MyApp" parent = "Theme.Material3.DayNight.NoActionBar">
        <!-- Customize your light theme here. -->
        <item name = "colorPrimary">@drawable/card_gradients</item>
        <item name = "colorPrimaryDark">@drawable/card_gradients</item>
        <item name = "colorAccent">@color/white</item>
        <item name = "android:statusBarColor">@drawable/card_gradients</item>
        <item name = "android:windowFullscreen">false</item>

    </style>

nev_item_select

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

nav_item_background_selector:

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

можешь тоже поделиться кодом селектора?

Laser 13.06.2024 06:57

Проверьте эти возможности... убедитесь, что в вашем макете XML или в стилях, примененных к представлению, не указаны дополнительные отступы или поля, рассмотрите возможность использования ConstraintLayout для корневого макета, проверьте ограничения или атрибуты родительского макета, которые могут повлиять на расположение НижнийНавигационныйView.

DroidFlutter 13.06.2024 06:58

Обновлен код

Dulitha Bandaranayake 13.06.2024 07:13

@DroidFlutter верно

Meet 13.06.2024 07:21

@DulithaBandaranayake в вашем файле тем, что такое card_gradients. можешь тоже поделиться, пожалуйста?

Laser 13.06.2024 07:44

Это выглядит так, как будто вставки окон будут применяться как к дочернему, так и к родительскому элементу. Можете ли вы проверить, правильно ли их потребляет родитель?

m.reiter 13.06.2024 09:06
0
6
52
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Итак, как сказано в DroidFlutter, проверьте правильность ограничений и отступов или полей в родительском макете. Если все в порядке, я столкнулся с проблемой, когда выбранный значок имел ненужный розовый цвет, и исправил ее таким образом.

Поэтому я изменил тему с themes.xml и заменил ее на

<resources>
    <!-- MyApplication is your application. you only need to change the parent theme -->
    <style name = "Base.Theme.MyApplication" parent = "Theme.MaterialComponents.DayNight.NoActionBar">

Спасибо за ответ. но проблема была app:backgroundTint в панели навигации. Я установил этот цвет на белый и готово!

Dulitha Bandaranayake 13.06.2024 14:26
Ответ принят как подходящий

проблема заключалась в том, что app:backgroundTint = "@drawable/nav_item_background_selector" я изменил ее на app:backgroundTint = "@color/white", теперь она исправлена. Если вы используете темный режим по умолчанию, он получит системный цвет.

Другие вопросы по теме

Почему мы не используем ConstraintLayout в компоновке Jetpack так же, как в XML?
Как поместить изображение на кнопку Android Studio
Почему в Android Studio возникают проблемы с использованием пользовательских стилей в моем проекте?
Два представления прокрутки, расположенные одно под другим, должны занимать половину пространства, но сжиматься в пользу другого, если они не заполнены полностью
Наложение представления Android не предотвращает нажатие на элементы управления позади него
Как центрировать дочернее представление, но сохранить соотношение сторон в ConstraintLayout
Как сделать так, чтобы за прокручиваемым макетом следовал другой макет в активности Android
Как я могу создать такое нижнее представление навигации с помощью плавающей кнопки действия (FAB), содержащей как значок, так и изображение?
Как сделать FAB с иконкой и текстом
Как правильно выровнять два изображения в Android для всех размеров дисплея, используя макет ограничений