首页 > 解决方案 > Android DrawerLayout - 带有 Gravity.Start 的 openDrawer 创建一个 lint 错误“必须是一个或多个...”

问题描述

我创建了一个DrawerLayout并且还有一个ImageView(“汉堡包”),单击时会打开它。
我的问题是,使用以下代码时,AndroidStudio: 中显示 lint 错误Must be one or more of: Gravity.LEFT, Gravity.RIGHT...,其中没有Gravity.START

ImageView openDrawerImageView = findViewById(R.id.open_drawer_image_icon);
openDrawerImageView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        drawerLayout.openDrawer(Gravity.START);
    }
});

标签: androidlintdrawerlayoutgravity

解决方案


我找了一会儿答案,但没有找到。我决定把它留到以后,因为这只是一个 lint 错误,并且该应用程序实际上可以使用Gravity.START.
后来我需要在某些情况下关闭抽屉,所以我使用了:drawerLayout.closeDrawer(START)然后我使用了自动完成功能,得到了答案:GravityCompat

drawerLayout.closeDrawer(GravityCompat.START);

推荐阅读