【发布时间】:2020-09-23 16:03:54
【问题描述】:
我正在使用 Android Studio 在 Android 中组装一个带有 Botton 导航栏的应用。有两个图标看起来不错,但是当我添加四个时,图标看起来被裁剪了。我找不到任何其他类似的错误。欢迎提出任何建议。
Cropped icons bottom nav 4 options
这是底部导航的代码 (bottom_navigation.xml)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_lines"
android:enabled="true"
android:icon="@drawable/ic_lines_off"
android:title="Lines"
android:background="@android:color/transparent"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_contacts"
android:enabled="true"
android:icon="@drawable/ic_contacts_off"
android:title="Contacts"
android:background="@android:color/transparent"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_conversations"
android:enabled="true"
android:icon="@drawable/ic_conversations_off"
android:title="Conversations"
android:background="@android:color/transparent"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_settings"
android:enabled="true"
android:icon="@drawable/ic_settings_off"
android:title="Settings"
android:background="@android:color/transparent"
app:showAsAction="ifRoom" />
</menu>
在我的 activity.xml 中,我这样调用底部菜单:
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottomNavigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:itemIconTint="@drawable/bnv_tab_item_foreground"
app:itemTextColor="@drawable/bnv_tab_item_foreground"
app:menu="@menu/bottom_navigation" />
问题更新:
我尝试改变
app:showAsAction="ifRoom"
为
app:showAsAction="always"
这并不能解决问题。问题没有变化。而且它并没有按应有的方式在每个图标中显示标签。仅在选定的一个上。
解决它的一种方法是在活动的底部导航调用中添加一个主题,如下所示:
android:theme="?attr/toolbarNavigationButtonStyle"
我不知道它为什么会起作用,但它显然解决了许多设备中的问题三星 Galaxy Note 8 除外
这里是“bnv_tab_item_foreground”
<?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/colorAccent" />
<item android:color="@android:color/darker_gray" />
</selector>
【问题讨论】:
标签: android icons bottomnavigationview