分隔项不允许我的代码 运行

Divider item does not allow my code to run

在我的导航抽屉中,我正在尝试执行一段代码来启动一个新的 activity,以便它从一个 activity 移动到另一个。但是,当我使用 DividerDrawerItem() 时,它不会执行最后一个 case 语句 (4)。我在没有 DividerDrawerItem() 的情况下尝试过它并且它有效但是当我添加它时它没有。

PrimaryDrawerItem item1 = new PrimaryDrawerItem().withIdentifier(1).withName("Home Page");
PrimaryDrawerItem item2 = new PrimaryDrawerItem().withIdentifier(2).withName("Rank Table");
PrimaryDrawerItem item3 = new PrimaryDrawerItem().withIdentifier(3).withName("Report");
PrimaryDrawerItem item4 = new PrimaryDrawerItem().withIdentifier(4).withName("Log out");

//create the drawer and remember the `Drawer` result object
 Drawer result = new DrawerBuilder()
     .withActivity(this)
     .withAccountHeader(headerResult)
     .withToolbar(toolbar)
     .addDrawerItems(
      item1, item2,item3,
      new DividerDrawerItem(),
      item4

              )
        .withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
                    @Override
                    public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
                        // do something with the clicked item :D
                        switch(position){
                            case 1: startActivity(new Intent(HomePage.this, HomePage.class));
                                break;
                            case 2: startActivity(new Intent(HomePage.this, RankT.class));
                                break;
                            case 3: startActivity(new Intent(HomePage.this,Report.class));
                            break;
                            case 4: firebaseAuth.signOut();
                                finish();
                                startActivity(new Intent(HomePage.this,MainActivity.class));
                        }
                        return true;
                    }

我认为您的代码在应该使用 identifier.

的地方使用了 position

switch(position)改为switch((int) drawerItem.getIdentifier())