首页 > 解决方案 > 底部导航视图不起作用

问题描述

我的底部导航视图不起作用。当我单击项目时,我的片段未加载。

这是我的底部导航视图活动

public static void enableNavigation(Context context, final BottomNavigationViewEx view, final FragmentManager supportFragmentManager){
    view.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) {
            Fragment fragment;
            switch (item.getItemId()){
                case R.id.nav_home:
                    fragment = new FragmentMarker();
                    loadFragment(fragment);
                    return true;
                case R.id.nav_bookmark:
                    fragment = new FragmentBookmark();
                    loadFragment(fragment);
                    return true;
                case R.id.nav_blog:
                    fragment = new FragmentBlog();
                    loadFragment(fragment);
                    return true;
                case R.id.nav_notification:
                    fragment = new FragmentNotification();
                    loadFragment(fragment);
                    return true;
            }
           return false;
        }

        private void loadFragment(Fragment fragment) {
            FragmentTransaction transaction = fragment.getFragmentManager().beginTransaction();
            transaction.replace(R.id.container, fragment);
            transaction.addToBackStack(null);
            transaction.commit();
        }
    });

 }

我正在使用这个库链接

标签: androidfragmentbottomnavigationview

解决方案


尝试

        Fragment fragment;
        boolean valToReturn = false
        switch (item.getItemId()){
            case R.id.nav_home:
                fragment = new FragmentMarker();
                valToReturn = true;
                break;
            case R.id.nav_bookmark:
                fragment = new FragmentBookmark();
                valToReturn = true;
                break;
            case R.id.nav_blog:
                fragment = new FragmentBlog();
                valToReturn = true;
                break;
            case R.id.nav_notification:
                fragment = new FragmentNotification();
                valToReturn = true;
                break;
       }
       loadFragment(fragment);
       return valToReturn;

推荐阅读