KOTLIN-BottomNavigationBar中的第一项不可见,标题问题

问题描述 投票:1回答:2

我有一个BottomNavigationBar,其中包含5个项目。除名称和图标外,第一项与其余项相同。这是bottom_nav菜单的xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

    <item
        android:id="@+id/name_configuration"
        android:title="Name Mech"
        android:icon="@drawable/ic_action_name"
        />

    <item
        android:id="@+id/mech_skills"
        android:title="Skills"
        android:icon="@drawable/ic_action_skills"
        />

    <item
        android:id="@+id/stat_hub"
        android:title="Stat Hub"
        android:icon="@drawable/ic_action_stats"
        />

    <item
        android:id="@+id/mech_weapons"
        android:title="Weapons"
        android:icon="@drawable/ic_action_weapon"
        />

    <item
        android:id="@+id/mech_systems"
        android:title="Systems"
        android:icon="@drawable/ic_action_system"
        />
</menu>

这是我用于图标的可绘制对象的xml

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24"
    android:tint="#FFFFFF"
    android:alpha="0.8">
    <path
        android:fillColor="#FF000000"
        android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
</vector>

最后,这是我用于Bar本身的xml

<com.google.android.material.bottomnavigation.BottomNavigationView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/btm_nav"
        app:layout_constraintBottom_toBottomOf="parent"
        android:background= "@color/colorPrimary"
        app:menu="@menu/bottom_nav"/>

其余可绘制对象的xml完全相同(它们使用不同的图标,但这与xml本身无关)。但是,name_configuration项在底部导航栏中不可见。单击时,它的行为与其他项目相同(它们传递SharedPreferences值并移至不同的活动),只是不可见。但是,当按下底部导航栏上的其他按钮时,在应用程序进入下一个活动之前,“名称”按钮将短暂变为正确的颜色/透明度,并且“名称”按钮再次变为不可见。

此外,名称机械的标题是底部导航栏中任何按钮出现的唯一标题。 “名称机甲”出现在底部导航栏中的图标下方,但是“技能”,“ StatHub”,“武器”和“系统”没有出现在底部导航栏中的相应图标下方。

任何指导将不胜感激。

android xml kotlin bottomnavigationview android-bottomnav
2个回答
0
投票

您的标签被视图隐藏。您可以在BottomNavigationView上设置app:labelVisibilityMode="labeled"以强制它们出现。我相信,如果他们占用过多的空间,文字将被截断。


0
投票

当您未为BottomNavigationView设置'labelVisibilityMode'时,它的默认设置是自动模式,在这种模式下,只有第一个项目被标记,而另一个没有标记。当您将'labelVisibilityMode'设置为有标签时,所有项目都将被标签。

在默认模式下是:

app:labelVisibilityMode="auto"

您将其更改为:

app:labelVisibilityMode="labeled"

此外,如果您根本不需要标签,只需设置:

app:labelVisibilityMode="unlabeled"
© www.soinside.com 2019 - 2024. All rights reserved.