简体   繁体   English

导航抽屉项目单击不适用于其他活动

[英]Navigation drawer items click is not working on other activities

I'm trying to click on navigation drawer items but not working. 我正在尝试单击导航抽屉项目,但无法正常工作。

I made a NavigationDrawerActivity (by default: creating new project) and an AriesActivity (new activity). 我做了一个NavigationDrawerActivity (默认情况下:创建新项目)和一个AriesActivity (新活动)。 When I go with NavigationDrawerActivity, item click works. 当我使用NavigationDrawerActivity时,项目单击有效。 But when i go with AriesActivity, item clicks are not working. 但是,当我使用AriesActivity时,项目单击不起作用。
Here I included drawer icon on AriesActivity, clicking on icon navigation drawer opens but item clicks are not working. 在这里,我在AriesActivity上包含了抽屉图标 ,点击了图标导航按钮,抽屉打开了,但项目单击不起作用。

So the main question is How to handle clicks over navigation items on other activities by including drawer on other activities? 因此,主要问题是如何通过在其他活动中添加抽屉来处理其他活动中的导航项单击?

Here's my AriesActivity code 这是我的AriesActivity代码

  public class AriesActivity extends AppCompatActivity {

    Toolbar mtoolbar;
    private DrawerLayout drawerLayout;

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_aries);

        //setting TOOLBAR on this activity(page)
        mtoolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(mtoolbar);
        Objects.requireNonNull(getSupportActionBar()).setTitle(null);


        //setting DRAWER on this activity(page)
        drawerLayout = (DrawerLayout) findViewById(R.id.drawerLayout);
        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawerLayout, mtoolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
        drawerLayout.addDrawerListener(toggle);
        toggle.syncState();
   }
}

You have to override this method (onNavigationItemSelected) Example : 您必须重写此方法(onNavigationItemSelected)示例:

 @Override
    public boolean onNavigationItemSelected(MenuItem item) {
        // Handle navigation view item clicks here.
        int id = item.getItemId();

        if (id == R.id.nav_gallery) {
            startActivity(new Intent(Activity1.this, Activity2.class));
            finish();
        } else if (id == R.id.nav_slideshow) {
            startActivity(new Intent(Activity2.this, Activity1.class));
            finish();
        } else if (id == R.id.nav_manage) {

        } else if (id == R.id.nav_share) {

        } else if (id == R.id.nav_send) {

        }

        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);

        drawer.closeDrawer(GravityCompat.START);
        return true;
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM