我的底部导航栏仅在我双击以切换片段时才有效

用户9446596

我创建了一个底部导航栏,可以在 4 个片段之间切换。它工作正常,但是,我需要双击菜单项才能在片段之间切换。这不是我想要的功能,我也不知道它是如何产生的。

我遵循的教程都需要单击一下才能在片段之间切换,所以我很困惑。

我的 MainActivity.java

public class MainActivity extends AppCompatActivity
     {
private FirebaseAuth auth;
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        auth = FirebaseAuth.getInstance();
        if (auth.getCurrentUser() == null) {
            startActivity(new Intent(MainActivity.this, Login_Page_Activity.class));
        }
        BottomNavigationView bottomnav = findViewById(R.id.bottom_navigation);
        bottomnav.setOnNavigationItemReselectedListener(navListener); //this
        getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
                new explore_fragment()).commit();
    }

        private BottomNavigationView.OnNavigationItemReselectedListener navListener=
            new BottomNavigationView.OnNavigationItemReselectedListener() {
                @Override
                public void onNavigationItemReselected(@NonNull MenuItem menuItem) {
                    Fragment selectedFragment = null;
                    switch (menuItem.getItemId()){
                        case R.id.nav_explore:
                            selectedFragment = new explore_fragment();
                            break;
                        case R.id.nav_add:
                            selectedFragment = new add_events_fragment();
                            break;
                        case R.id.nav_events:
                            selectedFragment = new events_fragment();
                            break;
                        case R.id.nav_chat:
                            selectedFragment = new Chats_fragment();
                            break;
                    }
                    getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
                            selectedFragment).commit();

                }
            };
Lakhwinder Singh |

也许问题是 Item ReselectedListener

尝试项目选定的侦听器

public class MainActivity extends AppCompatActivity
     {
private FirebaseAuth auth;
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        auth = FirebaseAuth.getInstance();
        if (auth.getCurrentUser() == null) {
            startActivity(new Intent(MainActivity.this, Login_Page_Activity.class));
        }
        BottomNavigationView bottomnav = findViewById(R.id.bottom_navigation);
        bottomnav.setOnNavigationItemSelectedListener(navListener); //this
        getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
                new explore_fragment()).commit();
    }

        private BottomNavigationView.OnNavigationItemSelectedListener navListener=
            new BottomNavigationView.OnNavigationItemSelectedListener() {
                @Override
                public void onNavigationItemSelected(@NonNull MenuItem menuItem) {
                    Fragment selectedFragment = null;
                    switch (menuItem.getItemId()){
                        case R.id.nav_explore:
                            selectedFragment = new explore_fragment();
                            break;
                        case R.id.nav_add:
                            selectedFragment = new add_events_fragment();
                            break;
                        case R.id.nav_events:
                            selectedFragment = new events_fragment();
                            break;
                        case R.id.nav_chat:
                            selectedFragment = new Chats_fragment();
                            break;
                    }
                    getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
                            selectedFragment).commit();

                }
            };

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

每次我切换标签时都会加载片段,需要有效的方法

来自分类Dev

glDrawArrays仅在我向其传递“错误”数据时才有效

来自分类Dev

为什么我的 tkinter 窗口仅在全局创建时才有效?

来自分类Dev

我的导航栏未在Android Studio Kotlin中的片段之间切换

来自分类Dev

Angular 仅在我指定 app.get("*"[...]); 时才有效;在我的 server.js 中

来自分类Dev

我的导航栏切换不会折叠

来自分类Dev

VBA Excel Workbooks.Open 仅在我先手动打开时才有效

来自分类Dev

当我将切换导航文本链接替换为图像时,从双击更改为单击?

来自分类Dev

仅当我长按链接时,如何修复选择器导航才有效

来自分类Dev

仅当我在Chrome中选择检查元素时,页面上的CSS菜单栏才有效

来自分类Dev

切换片段时为什么我的按钮文字没有显示?

来自分类Dev

为什么我的Rails AJAX删除方法仅在刷新后才有效?

来自分类Dev

Powershell 脚本仅在存在断点时才有效

来自分类Dev

我的程序只在我声明一个额外的数组时才有效

来自分类Dev

如何在我的引导程序3导航栏中打开仅折叠折叠时如何切换按钮的颜色

来自分类Dev

基于路由切换App.js中的组件,仅在刷新时有效

来自分类Dev

切换显示仅在第二次点击时有效

来自分类Dev

切换仅在第一次时有效

来自分类Dev

java 应用程序仅在我不在命令行中包含其“.jar”扩展名时才有效,为什么会这样?

来自分类Dev

仅当我已经登录SSH时,无密码SSH才有效

来自分类Dev

仅当我保存两次时,Django模型覆盖才有效

来自分类Dev

仅当我已经登录SSH时,无密码SSH才有效

来自分类Dev

在Center上调整对象,仅当我确定宽度时才有效

来自分类Dev

我如何在导航栏切换引导程序中将位置更靠左?

来自分类Dev

我的命令仅在我从终端运行时才有效。当我使用启动器时它不起作用。我该怎么做才能解决这个问题?

来自分类Dev

切换活动时,导航栏会短暂出现

来自分类Dev

Bootstrap 导航栏在折叠时不会切换打开

来自分类Dev

我如何使我的导航栏项目有效地在屏幕上延伸

来自分类Dev

我如何使我的导航栏项目有效地在屏幕上延伸

Related 相关文章

  1. 1

    每次我切换标签时都会加载片段,需要有效的方法

  2. 2

    glDrawArrays仅在我向其传递“错误”数据时才有效

  3. 3

    为什么我的 tkinter 窗口仅在全局创建时才有效?

  4. 4

    我的导航栏未在Android Studio Kotlin中的片段之间切换

  5. 5

    Angular 仅在我指定 app.get("*"[...]); 时才有效;在我的 server.js 中

  6. 6

    我的导航栏切换不会折叠

  7. 7

    VBA Excel Workbooks.Open 仅在我先手动打开时才有效

  8. 8

    当我将切换导航文本链接替换为图像时,从双击更改为单击?

  9. 9

    仅当我长按链接时,如何修复选择器导航才有效

  10. 10

    仅当我在Chrome中选择检查元素时,页面上的CSS菜单栏才有效

  11. 11

    切换片段时为什么我的按钮文字没有显示?

  12. 12

    为什么我的Rails AJAX删除方法仅在刷新后才有效?

  13. 13

    Powershell 脚本仅在存在断点时才有效

  14. 14

    我的程序只在我声明一个额外的数组时才有效

  15. 15

    如何在我的引导程序3导航栏中打开仅折叠折叠时如何切换按钮的颜色

  16. 16

    基于路由切换App.js中的组件,仅在刷新时有效

  17. 17

    切换显示仅在第二次点击时有效

  18. 18

    切换仅在第一次时有效

  19. 19

    java 应用程序仅在我不在命令行中包含其“.jar”扩展名时才有效,为什么会这样?

  20. 20

    仅当我已经登录SSH时,无密码SSH才有效

  21. 21

    仅当我保存两次时,Django模型覆盖才有效

  22. 22

    仅当我已经登录SSH时,无密码SSH才有效

  23. 23

    在Center上调整对象,仅当我确定宽度时才有效

  24. 24

    我如何在导航栏切换引导程序中将位置更靠左?

  25. 25

    我的命令仅在我从终端运行时才有效。当我使用启动器时它不起作用。我该怎么做才能解决这个问题?

  26. 26

    切换活动时,导航栏会短暂出现

  27. 27

    Bootstrap 导航栏在折叠时不会切换打开

  28. 28

    我如何使我的导航栏项目有效地在屏幕上延伸

  29. 29

    我如何使我的导航栏项目有效地在屏幕上延伸

热门标签

归档