Android NavigationView ящик установить минимальный объем перетаскивания для открытия - PullRequest
0 голосов
/ 27 декабря 2018

Как сделать так, чтобы выдвижной ящик автоматически открывался (вместо заднего автоматического закрывания), когда вы перетаскивали его даже с небольшим количеством?Например, около 10% ширины экрана, мы отпустим палец, и ящик откроется.Как мы можем этого достичь?

1 Ответ

0 голосов
/ 28 декабря 2018

Я не уверен, что вы хотите достичь следующего.Но вы можете попробовать это.(«mDrawerLayout» - это ваш DrawerLayout. «mNavigationView» - это ваш NavigationView.)

    mDrawerLayout.addDrawerListener(new DrawerLayout.DrawerListener() {
        boolean isOpen=false;
        @Override
        public void onDrawerSlide(@NonNull View drawerView, float slideOffset) {

            if(slideOffset>0 && !isOpen){
                mDrawerLayout.openDrawer(mNavigationView);
            }

            if(slideOffset==1){
                isOpen=true;
            }else if(slideOffset==0){
                isOpen=false;
            }
        }

        @Override
        public void onDrawerOpened(@NonNull View drawerView) {
            setMenuItemUnselected();
        }

        @Override
        public void onDrawerClosed(@NonNull View drawerView) {
            setMenuItemUnselected();
        }

        @Override
        public void onDrawerStateChanged(int newState) {

        }
    });
...