首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BottomNavigationView与AppCompat

BottomNavigationView与AppCompat
EN

Stack Overflow用户
提问于 2021-06-10 07:44:11
回答 2查看 119关注 0票数 0

亲爱的开发者!

我现在正在学习在java上开发应用程序,最近我发现了BottomNavigationView的存在。在此之前,我实际上只有按钮排列在布局的底部(耻辱)。我遇到了这样的问题:几乎所有的活动都扩展了AppCompatActivity,但是导航视图只适用于片段(如果我错了,很抱歉)。我是否可以在AppCompat中使用它,或者可能使用另一个小部件?非常感谢你的回答,尤其是如果答案是开放的话。提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-07-06 16:35:21

首先,谢谢你的建议,我真的很感激!

为了在BottomNavigationView活动中使用AppCompat,除了@AnantaRaha提供的代码之外,我还在.java文件中使用了以下内容:

代码语言:javascript
复制
    BottomNavigationView bottomNavigationView = findViewById(R.id.navigation);
    bottomNavigationView.setSelectedItemId(R.id.home);
    bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) {
            switch (item.getItemId()) {
                case R.id.dashboard:
                    startActivity(new Intent(getApplicationContext()
                            , Dashboard.class));
                    overridePendingTransition(0, 0);
                    return true;
                case R.id.home:
                    return true;
                case R.id.about:
                    startActivity(new Intent(getApplicationContext()
                            , Aboutt.class));
                    overridePendingTransition(0, 0);
                    return true;
            }
            return false;
        }
    });

overridePendingTransition帮助您消除了当您使用它时所引起的闪烁和小延迟(另一个活动现在立即开始) :D

票数 0
EN

Stack Overflow用户

发布于 2021-06-10 07:58:22

BottomNavigationView可以用于活动或片段。详细信息

您可以在xml中设置它,例如:

代码语言:javascript
复制
<com.google.android.material.bottomnavigation.BottomNavigationView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schema.android.com/apk/res/res-auto"
    android:id="@+id/navigation"
    android:layout_width="match_parent"
    android:layout_height="56dp"
    android:layout_gravity="start"
    app:menu="@menu/my_navigation_items" />

在res/menu/my_Navigationitems.xml中:

代码语言:javascript
复制
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/action_search"
        android:title="@string/menu_search"
        android:icon="@drawable/ic_search" />
    <item android:id="@+id/action_settings"
        android:title="@string/menu_settings"
        android:icon="@drawable/ic_add" />
    <item android:id="@+id/action_navigation"
        android:title="@string/menu_navigation"
        android:icon="@drawable/ic_action_navigation_menu" />
</menu>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67916816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档