enter image description here I want to stop fragment when user picks orderdate and deliveryDate.
I have an activity inside that a two cards oderDate and deliveryDate when the user clicks any one of them it goes to a fragment to pick a date and i want to stop that fragment when user pick dates.
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();
}
try this code:
getFragmentManager().popBackStack()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.