У меня есть NagivationDrawer, когда пользователь нажимает определенный элемент, я изменяю фрагмент.
Итак, у меня есть что-то подобное
public class MyFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
......
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState){
.......
}
public class MyAsynchTack extends AsyncTask<Void, Void, Boolean> {
.
.
.
@Override
protected void onPostExecute(final Boolean success) {
showProgress(false);
if (success) {
getActivity().getSupportFragmentManager().popBackStack();
} else {
String title = getString(R.string.serverErrTitle);
String message = getString(R.string.serverErr);
DialogBoxNetworkError dialog = new DialogBoxNetworkError();
Bundle args = new Bundle();
args.putString(DialogBoxNetworkError.ARG_TITLE, title);
args.putString(DialogBoxNetworkError.ARG_MESSAGE, message);
dialog.setArguments(args);
dialog.show(getActivity().getFragmentManager(), "tag");
}
}
.
.
.
.
}
Я использую это для удаления фрагмента науспех:
if (success) {
getActivity().getSupportFragmentManager().popBackStack();
}
Но это не работает, я пробовал и другие решения, которые нашел.
Спасибо.
Отредактировано
вот как добавляется фрагмент из действия NavigationDrawer:
public void addNewWh(View view) {
SellerNewWhFragment fragment = null;
fragment = new SellerNewWhFragment();
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame, fragment);
fragmentTransaction.commit();
}