工具栏中汉堡包图标的可点击区域不正确

时间:2018-07-17 15:50:29

标签: android android-toolbar

我遇到了一个我自己无法解决的问题

我无法使用工具栏中的汉堡图标打开导航抽屉,但是我发现单击图标上方的区域可以打开它。

这是屏幕截图:

Clickable zone

在上图中,如果我单击红色区域中的某个地方,我只能仅打开导航抽屉,否则将不会发生任何事情。

OnCreate:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setupMainViews();
    configureToolBar();
    configureDrawerLayout();
    configureNavigationView();
}

configureToolBar:

private void configureToolBar(){
    this.tbMain = findViewById(R.id.tbMain);
    setSupportActionBar(tbMain);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}

configureDrawerLayout:

private void configureDrawerLayout(){
    dlMain = findViewById(R.id.dlMain);
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, dlMain, tbMain,
            R.string.navigation_drawer_open, R.string.navigation_drawer_close){
        @Override
        public void onDrawerClosed(View drawerView) {
            super.onDrawerClosed(drawerView);
        }

        @Override
        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
        }
    };
    dlMain.addDrawerListener(toggle);
    toggle.syncState();
}

activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/dlMain"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:openDrawer="start"
tools:context=".MainActivity">
    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/mainbackground">

        <android.support.v7.widget.Toolbar
            android:id="@+id/tbMain"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:minHeight="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:theme="@style/ToolBarStyle"/>

        //other views...

    </RelativeLayout>

    <android.support.design.widget.NavigationView
        android:id="@+id/nvSide"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/sideview_header"
        app:menu="@menu/sidemenu_items" />
</android.support.v4.widget.DrawerLayout>

1 个答案:

答案 0 :(得分:0)

您是否有机会使用模拟器?我发现点击的准确性非常差。如果是的话,那可能就是问题所在。