无法从导航抽屉打开活动

时间:2018-05-01 10:13:42

标签: android

我正在构建一个应用程序,其中使用导航抽屉,用户打开活动,但在使用switch case时,活动无法打开。 if语句在哪里工作。

@Override
    public boolean onOptionsItemSelected(MenuItem item) {

        if(mToggel.onOptionsItemSelected(item)){
            return true;
        }

        switch (item.getItemId()){
            case R.id.nav_dataType:
                Intent intent_class = new Intent(Info.this, datatypes_number.class);
                startActivity(intent_class);
                break;

            case R.id.nav_condition:
                Intent intent_condition = new Intent(Info.this, condition_info.class);
                startActivity(intent_condition);
                break;
        }
        return super.onOptionsItemSelected(item);
    }

2 个答案:

答案 0 :(得分:0)

因为这不是实现的方法,请执行: onNavigationItemSelected

答案 1 :(得分:0)

要在用户点击抽屉中的列表项时接收回调,请实现OnNavigationItemSelectedListener接口并通过调用setNavigationItemSelectedListener()将其附加到NavigationView。例如:

NavigationView navigationView = findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(
            new NavigationView.OnNavigationItemSelectedListener() {
                @Override
                public boolean onNavigationItemSelected(MenuItem menuItem) {
                    // set item as selected to persist highlight
                    menuItem.setChecked(true);
                    // close drawer when item is tapped
                    mDrawerLayout.closeDrawers();

                    // Add code here to update the UI based on the item selected
                    // For example, swap UI fragments here

                    return true;
                }
            });

希望这会对你有所帮助。