Tôi có một ứng dụng Android có NavigationView với 4 đoạn. Tôi có thể điều hướng giữa các đoạn thông qua menu điều hướng và khi tôi chọn một đoạn khác, tôi đã thêm đoạn trước đó vào ngăn xếp lại để cung cấp chức năng nút quay lại.Chọn lại đúng mục menu NavigationView sau khi nhấn nút quay lại
Vấn đề của tôi là khi tôi nhấn nút quay lại để đi đến đoạn trước đó, NavigationView vẫn hiển thị đoạn cũ như đoạn đã chọn. Nếu có thể, tôi muốn cập nhật tùy chọn đã chọn làm đoạn trên màn hình.
Ví dụ:
Tôi bắt đầu từ A và chọn B từ NavigationView. Màn hình hiện tại là B và NavigationView hiển thị mục đã chọn là B. Nếu tôi nhấn nút quay lại màn hình hiện tại của tôi sẽ trở thành A một lần nữa nhưng NavigationView hiển thị B là mục đã chọn.
Đây là phương pháp onNavigationItemSelected tôi:
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
HomeFragment fragment = null;
Class type = null;
switch (id) {
case R.id.nav_home:
type = HomeNavigationFragment.class;
break;
case R.id.nav_groups:
type = GroupsNavigationFragment.class;
break;
case R.id.nav_profile:
type = ProfileNavigationFragment.class;
break;
case R.id.nav_messages:
type = MessageNavigationFragment.class;
break;
}
fragment = HomeFragment.newInstance(mUser, type);
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.fragment_container, fragment).addToBackStack("fragment" + code++).commit();
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
Cảm ơn.
Nice và ngắn :-) – ahmadalibaloch