У меня есть действие, когда пользователь щелкает карточку в нем, он переходит к фрагменту ... и возвращаюсь к этому действию, как уничтожить этот фрагмент? - PullRequest
0 голосов
/ 22 октября 2019

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

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

orderActivity.xml

 orderDateCard.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View view) {
                isOrder = 1; // setting orderCard is true
                isDel = 0;

                fragmentContainer.setVisibility(View.VISIBLE);
                FragmentManager fragmentManager = getSupportFragmentManager();
                FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
                calender_view_fragment calender_view_fragment = new calender_view_fragment();
                fragmentTransaction.add(R.id.fragmentContainer, calender_view_fragment);
                fragmentTransaction.commit();


            }
        });
        delDateCard.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                isDel = 1; //setting deliveryCard is true
                isOrder = 0;

                fragmentContainer.setVisibility(View.VISIBLE);
                FragmentManager fragmentManager = getSupportFragmentManager();
                FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
                calender_view_fragment calender_view_fragment = new calender_view_fragment();
                fragmentTransaction.add(R.id.fragmentContainer, calender_view_fragment);
                fragmentTransaction.commit();
            }
        });

calender_view_fragment.xml

calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
        @Override
        public void onSelectedDayChange(@NonNull CalendarView calendarView, int selectedYear, int selectedMonth, int selectedDate) {
            orderYear = selectedYear;
            orderMonth = selectedMonth + 1;
            orderDate = selectedDate;


            calenderViewText.setText("PICK DELIVERY DATE");
            calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
                @Override
                public void onSelectedDayChange(@NonNull CalendarView calendarView, int selectedYear, int selectedMonth, int selectedDate) {
                    delDate = selectedDate;
                    delMonth = selectedMonth + 1;
                    delYear = selectedYear;
                    startOrderActivity();
                    stopCurrentFragment();


                }
            });


        }
    });
}

public void stopCurrentFragment(){



       calender_view_fragment  calender_view_fragment=new calender_view_fragment();
        getFragmentManager().beginTransaction().remove(calender_view_fragment).commitAllowingStateLoss();


    }

1 Ответ

1 голос
/ 22 октября 2019

попробуйте этот код:

getFragmentManager (). PopBackStack ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...