【问题标题】:drawer menu opening activities and fragments抽屉菜单打开活动和片段
【发布时间】:2021-02-28 23:37:55
【问题描述】:

现在我的一些菜单项只打开片段,我如何让它们也打开活动。目前我正在使用 Navigation Graph 中的 NavController 打开片段

MainActivity.java

   NavController navController = Navigation.findNavController(this, R.id.navHostFragment);
        NavigationUI.setupWithNavController(navigationView, navController);

        navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {


                switch (menuItem.getItemId()) {
                    case R.id.menuLeave:
                        Toast.makeText(MainActivity.this, "adeus", Toast.LENGTH_SHORT).show();
                        break;
                    case R.id.menuAccount:

                        getSupportFragmentManager().beginTransaction()
                                .replace(R.id.navHostFragment, new ContaFragment())
                                .commit();
                        break;
                    case R.id.menuPrincipal:
                        getSupportFragmentManager().beginTransaction()
                                .replace(R.id.navHostFragment, new PrincipalFragment())
                                .commit();
                        break;
                }

                DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawerLayout);
                drawer.closeDrawer(GravityCompat.START);
                return true;

            }
        });

```

【问题讨论】:

  • 用 Intent 打开 Activity 以防你想加载一个 Activity。

标签: java android navigation-drawer


【解决方案1】:

1)您应该阅读此答案并按照这些步骤操作https://stackoverflow.com/a/67389269/12660050

2) 为任何特定菜单项设置意图。

public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {


            switch (menuItem.getItemId()) {
                //put your activity intent here
                Intent intent = new Intent(MainActivity.this,DestinationActivityName.class);
                startActivity(intent);
                    break;
              }
         }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多