【问题标题】:Support library BottomNavigationView not showing icons支持库 BottomNavigationView 不显示图标
【发布时间】:2021-11-17 00:18:20
【问题描述】:

我正在使用 Android 支持设计小部件 BottomNavigationView 来制作我的底部导航项。它不显示图标,但显示文本并且工作正常。我正在使用支持库版本com.google.android.material:material:1.4.0,我的bottomnavigationView XML 代码是:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    tools:context=".MainActivity">

    <androidx.appcompat.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@drawable/gradient_bg"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="@dimen/_30sdp">

            <ImageView
                android:layout_width="@dimen/_55sdp"
                android:layout_height="@dimen/_35sdp"
                android:src="@drawable/logo1" />

        </LinearLayout>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="@dimen/_54sdp"
            android:gravity="center"
            android:text=""
            android:textColor="@color/white"
            android:textSize="@dimen/_12sdp" />
    </androidx.appcompat.widget.Toolbar>

    <FrameLayout
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintBottom_toTopOf="@+id/layout"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/toolbar" />

    <LinearLayout
        android:id="@+id/layout"
        android:layout_width="match_parent"
        android:layout_height="@dimen/_45sdp"
        android:layout_weight="0.90"
        android:background="@color/app_col1"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.5"
        app:layout_constraintStart_toStartOf="parent"
        android:gravity="center"
        android:orientation="vertical">

        <com.google.android.material.bottomnavigation.BottomNavigationView
            android:id="@+id/bottom_nav_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@color/app_col1"
            app:itemIconTint="@color/white"
            app:labelVisibilityMode="labeled"
            android:layout_gravity="center"
            android:theme="@style/Theme.App"
            app:itemTextColor="@drawable/tab_color"
            app:menu="@menu/bottom_navigation_menu"/>

    </LinearLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

我的菜单 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/page_1"
        android:enabled="true"
        android:iconTint="@drawable/ic_baseline_home_24"
        app:showAsAction="ifRoom"
        android:title="Home"/>
    <item
        android:id="@+id/page_2"
        android:iconTint="@drawable/ic_baseline_home_24"
        app:showAsAction="withText"
        android:title="Category"/>
    <item
        android:id="@+id/page_3"
        app:showAsAction="ifRoom"
        android:iconTint="@drawable/user"
        android:title="Profile"/>
</menu>

我该如何解决这个问题?

【问题讨论】:

    标签: java android xml material-design bottomnavigationview


    【解决方案1】:

    在您的活动布局中添加以下代码。

      <com.google.android.material.bottomnavigation.BottomNavigationView
                            android:id="@+id/btmMenu"
                            android:layout_width="match_parent"
                            android:layout_height="50dp"
                            android:layout_alignParentBottom="true"
                            app:itemIconSize="@dimen/bottom_navigation_icon_size"
                            app:labelVisibilityMode="labeled"
                            android:background="@color/white_color"
                            app:menu="@menu/menu"
                            app:elevation="0dp"></com.google.android.material.bottomnavigation.BottomNavigationView>
        
    

    创建一个 menu.xml 文件并添加以下代码。

        <?xml version="1.0" encoding="utf-8"?>
        <menu xmlns:android="http://schemas.android.com/apk/res/android">
        
            <item
                android:id="@+id/Home"
                android:title="Home"
                android:icon="@drawable/home_selector"/>
        
            <item
                android:id="@+id/Statistics"
                android:title="Statistics"
                android:icon="@drawable/statitics_selector"/>
        
            <item
                android:id="@+id/Analytics"
                android:title="Analytics"
                android:icon="@drawable/analytics_selector"/>
        
            <item
                android:id="@+id/Profile"
                android:title="Profile"
                android:icon="@drawable/profile_selector"/>
        </menu>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-08
      • 1970-01-01
      • 2020-10-26
      • 1970-01-01
      • 2017-03-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多