[android] 항목을 눌렀을 때 탐색 창을 닫는 방법은 무엇입니까?

이상적으로는 탐색 창에서 일부 항목을 누르면 닫히지 만 자동으로 실행되지는 않습니다. 어떻게하나요? 감사!



답변

알았다!

private DrawerLayout mDrawerLayout;
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerLayout.closeDrawers();

완벽하게 잘 작동합니다.


답변

나를 위해 이것은 일했습니다-

mDrawerLayout.closeDrawer(Gravity.START, false);


답변

DrawerLayout mDrawerLayout= (DrawerLayout) findViewById(R.id.drawer_layout)

closeDrawer(); // called when you want to close

public void closeDrawer() {
  if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
    mDrawerLayout.closeDrawer(GravityCompat.START);
  }
}


답변

스위치 케이스가 끝나는 onNavigationItemSelected의 오른쪽 하단에서이 부분을 바로 잡아야합니다. mDrawerLayout.closeDrawers ();

public boolean onNavigationItemSelected(@NonNull MenuItem item) {
        switch (item.getItemId()){

        }
   mDrawerLayout.closeDrawers();
   return true;
}


답변

서랍 레이아웃으로 mDrawerLayout이있는 경우 열려있을 때 닫을 수 있습니다.

@Override
public void onBackPressed() {
    if (this.mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
        this.mDrawerLayout.closeDrawer(GravityCompat.START);
    } else {
        super.onBackPressed();
    }
}


답변

closeDrawer();//when you want to call

public void closeDrawer() {
    if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
        mDrawerLayout.closeDrawer(GravityCompat.START);
    }
}


답변