Пребывание в навигационном ящике при нажатии на него - PullRequest
0 голосов
/ 19 сентября 2018

У меня есть ящик с навигацией.Когда я нажимаю на определенный элемент из панели навигации, блок навигации закрывается и перенаправляется на главную страницу.Я хочу обновить навигационный ящик после нажатия на него в нем.

@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
    int id = item.getItemId();
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);

    if (id == R.id.refresh_drawer) {
        ----CODE----

    } 
    drawer.closeDrawer(GravityCompat.START);
    return true;
}

Что я могу сделать, чтобы обновить навигационный ящик, а не перенаправлять его на главную страницу?кто-нибудь, пожалуйста, помогите мне

1 Ответ

0 голосов
/ 19 сентября 2018

Он закрывается, потому что вы использовали:

drawer.closeDrawer(GravityCompat.START);

В методе onNavigationItemSelected(), поэтому удаление этого поможет.


Также:

DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);

Определите этот метод внутри onCreate() и сделайте его закрытым, добавив его выше onCreate(), например, чтобы иметь полный доступ к Activity:

private DrawerLayout drawer;

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

        drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
}

Это рекомендуемый способ определения таких виджетов внутриActivity при создании Activity.

...