BottomNavigationView 底部背景未正确设置为 itemBackground
BottomNavigationView bottom background is not set to itemBackground correctly
我创建了一个带有 4 个菜单的 BottomNavigationView。不知何故,它没有设置背景颜色来覆盖文本和图标。看截图,文字和图片还是白底
<style name="BottomNavigationView" parent="">
<item name="labelVisibilityMode">labeled</item>
<item name="itemHorizontalTranslationEnabled">false</item>
<item name="itemBackground">@android:color/holo_green_light</item>
<item name="itemTextColor">@drawable/selector_bottom_bar_text</item>
<item name="itemIconTint">@drawable/selector_bottom_bar_icon</item>
<item name="itemTextAppearanceActive">@style/navTextActive</item>
<item name="itemTextAppearanceInactive">@style/navTextInactive</item>
</style>
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottomNav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
style="@style/BottomNavigationView"
app:menu="@menu/bottom_nav" />
- 如何修复文本和图标背景?
- 如何在图标和文字之间加一点space?
android:background="?android:attr/windowBackground"
app:itemIconTint="@drawable/bg_navigation"
app:itemTextColor="@drawable/bg_navigation"
然后创建bg_navigation.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:color="hex_color_code" />
<item android:state_checked="true" android:color="hex_color_code" />
</selector>
对于间距问题,您可以查看this
答案。
我不确定这是否有效。但是,您可以尝试将其添加到您的 Activity.java 文件中,看看它是否有效。
navigationView.setItemIconTintList(空);
navigationView.setBackgroundTintList(空);
感谢@Eugen Pechanec。有效。我在主题中设置背景颜色。造成了这个。从主题中删除背景后它可以正常工作
我创建了一个带有 4 个菜单的 BottomNavigationView。不知何故,它没有设置背景颜色来覆盖文本和图标。看截图,文字和图片还是白底
<style name="BottomNavigationView" parent="">
<item name="labelVisibilityMode">labeled</item>
<item name="itemHorizontalTranslationEnabled">false</item>
<item name="itemBackground">@android:color/holo_green_light</item>
<item name="itemTextColor">@drawable/selector_bottom_bar_text</item>
<item name="itemIconTint">@drawable/selector_bottom_bar_icon</item>
<item name="itemTextAppearanceActive">@style/navTextActive</item>
<item name="itemTextAppearanceInactive">@style/navTextInactive</item>
</style>
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottomNav"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
style="@style/BottomNavigationView"
app:menu="@menu/bottom_nav" />
- 如何修复文本和图标背景?
- 如何在图标和文字之间加一点space?
android:background="?android:attr/windowBackground"
app:itemIconTint="@drawable/bg_navigation"
app:itemTextColor="@drawable/bg_navigation"
然后创建bg_navigation.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:color="hex_color_code" />
<item android:state_checked="true" android:color="hex_color_code" />
</selector>
对于间距问题,您可以查看this
答案。
我不确定这是否有效。但是,您可以尝试将其添加到您的 Activity.java 文件中,看看它是否有效。 navigationView.setItemIconTintList(空); navigationView.setBackgroundTintList(空);
感谢@Eugen Pechanec。有效。我在主题中设置背景颜色。造成了这个。从主题中删除背景后它可以正常工作