Android导航组件:导航抽屉不响应

4
我正在尝试使用Android Jetpack的新导航组件创建导航抽屉。但是,出现了一个问题,相应的汉堡按钮显示在屏幕上,但根本不响应点击。
我尝试了几个在线教程,但都没有成功。我最后尝试的是https://developer.android.com/guide/navigation/navigation-ui 的官方方法。

MainActivity.java:

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


        setupNavigation();
    }

    private void setupNavigation() {
        drawer = findViewById(R.id.drawer_layout);
        Toolbar toolbar = findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);


        navController = Navigation.findNavController(this, R.id.nav_host_fragment);


        AppBarConfiguration appBarConfiguration =
                new AppBarConfiguration.Builder(navController.getGraph())
                        .setDrawerLayout(drawer)
                        .build();
        NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);


        NavigationView navView = findViewById(R.id.nav_view);
        NavigationUI.setupWithNavController(navView, navController);
   }

我不明白为什么它完全没有响应点击。
1个回答

4
根据同一页的操作栏(ActionBar)部分

接下来,重写onSupportNavigateUp()方法以处理向上导航:

override fun onSupportNavigateUp(): Boolean {
    return NavigationUI.navigateUp(navController, appBarConfiguration)
        || super.onSupportNavigateUp()
}

请注意,您创建的 AppBarConfiguration 需要在类级别上成为变量,以便可以在 setupNavigation()onSupportNavigateUp() 中使用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接