Откройте новый фрагмент или новое действие со стрелкой назад в верхнем левом углу, пока панель навигации все еще работает - PullRequest
0 голосов
/ 19 июня 2020

У меня есть приложение с ящиком навигации с фрагментом, созданным из android studio.

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

как на скриншоте ниже:

enter image description hereenter image description here

I tried with a new blank activity, but there is no back arrow and navigation drawer is not working or gone.

HomeFragment.java

public class HomeFragment extends Fragment {

    public View onCreateView(@NonNull LayoutInflater inflater,
                             ViewGroup container, Bundle savedInstanceState) {
        HomeViewModel homeViewModel = ViewModelProviders.of(this).get(HomeViewModel.class);
        View root = inflater.inflate(R.layout.fragment_home, container, false);
        final TextView textView = root.findViewById(R.id.text_home);
        homeViewModel.getText().observe(getViewLifecycleOwner(), new Observer() {
            @Override
            public void onChanged(@Nullable String s) {
                textView.setText(s);
            }
        });

        Button button = root.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(getContext(), SlideshowActivity.class));
            }
        });

        return root;
    }
}

введите описание изображения здесь

Как создать два скриншота выше?

1 Ответ

0 голосов
/ 20 июня 2020

В вашем SlideshowActivity вам нужно установить это в onCreate method

getSupportActionBar().setDisplayHomeAsUpEnabled(true);

И затем, чтобы обработать действие back, вам нужно сделать это:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // handle arrow click here
    if (item.getItemId() == android.R.id.home) {
        finish(); // to close the activity
    }

    return super.onOptionsItemSelected(item);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...