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

BottomNavigationView与setOnItemSelectedListener()
EN

Stack Overflow用户
提问于 2021-12-25 08:50:26
回答 1查看 827关注 0票数 1

我正在尝试用BottomNavigationView构建应用程序,并且我将setOnItemSelectedListener()方法设置为底部导航,这样当用户在底部导航中选择一个菜单时,我可以做我想做的事情。

当我不设置setOnItemSelectedListener()时,一切都是好的,但是当我设置setOnItemSelectedListener()方法时,当用户选择底部导航菜单时,片段就不会自动更新。

我认为在设置此方法时,是否必须手动处理片段事务?

谢谢^^

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-25 12:30:00

是。您需要手动替换onNavigationItemSelected上的片段项。

示例:

代码语言:javascript
复制
private BottomNavigationView.OnNavigationItemSelectedListener navListener = new BottomNavigationView.OnNavigationItemSelectedListener() {
        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) {
            // By using switch we can easily get
            // the selected fragment
            // by using there id.
            Fragment selectedFragment = null;
            switch (item.getItemId()) {
                case R.id.algorithm:
                    selectedFragment = new AlgorithmFragment();
                    break;
                case R.id.course:
                    selectedFragment = new CourseFragment();
                    break;
                case R.id.profile:
                    selectedFragment = new ProfileFragment();
                    break;
            }
            // It will help to replace the 
              // one fragment to other.
            getSupportFragmentManager()
                    .beginTransaction()
                    .replace(R.id.fragment_container, selectedFragment)
                    .commit();
            return true;
        }
    };

您可以在这里找到一个很好的教程:https://www.geeksforgeeks.org/bottomnavigationview-inandroid/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70478918

复制
相关文章

相似问题

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