com.google.android.material.bottomnavigation.BottomNavigationView不显示任何内容

时间:2020-02-27 10:54:22

标签: java android android-studio bottomnavigationview

我正在尝试使用android studio创建底部Nav,但不会显示。如果我增加它的高度,我可以看到BG颜色,但菜单项仍然没有内容

编辑: 将菜单xml视为空。

这是我的代码,我也尝试将布局更改为线性,框架和约束:

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout 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"
        tools:context=".HomeScreen">



    <com.google.android.material.bottomnavigation.BottomNavigationView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:menu="@menu/menu"
    android:layout_alignParentBottom="true"
        android:background="@color/btnSignUp"/>
    </RelativeLayout>

这是我的菜单项,它位于菜单文件夹中

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

    <item
        android:id="@+id/nav_home"
        android:icon="@drawable/ic_home_black_24dp"
        android:title="Home"
        />

    <item
        android:id="@+id/nav_search"
        android:icon="@drawable/ic_search_black_24dp"
        android:title="Search"
        />

    <item
        android:id="@+id/nav_orders"
        android:icon="@drawable/ic_receipt_black_24dp"
        android:title="Orders"
        />

    <item
        android:id="@+id/nav_account"
        android:icon="@drawable/ic_person_black_24dp"
        android:title="My Account"
        />

</menu>

最后是我的依赖项:

implementation 'com.github.jd-alexander:android-flat-button:1.1'

    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.firebase:firebase-auth:19.2.0'
    implementation 'com.google.firebase:firebase-firestore:21.4.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.firebase:firebase-analytics:17.2.2'
    implementation 'com.google.firebase:firebase-database:19.2.1'
    implementation 'com.rengwuxian.materialedittext:library:2.1.4'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.squareup.picasso:picasso:2.5.2'
    implementation 'com.google.android.material:material:1.1.0'

2 个答案:

答案 0 :(得分:0)

您的活动有效吗?我错过了onCreate()的代码!

请为BottomNavigationView添加一个ID,例如:

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:id="@+id/navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:background="?android:attr/windowBackground"
    app:menu="@menu/navigation" />

您的活动中必须是这样的代码。在那吗?

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    BottomNavigationView navigation = findViewById(R.id.navigation);
    navigation.setOnNavigationItemSelectedListener( mOnNavigationItemSelectedListener);
}
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
        = new BottomNavigationView.OnNavigationItemSelectedListener() {

    @Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()) {
             // ... implement code here
        }
        return false;
    }

};

编辑:可绘制文件夹中的图标(例如ic_home_black_24dp,参见图片)在显示menu.xml时是否显示在Android Studio中? enter image description here

答案 1 :(得分:0)

我在这里找到了答案:

Rendering Issue in Android Studio

似乎这是主题渲染问题,必须更改为appcompat。

谢谢