i want to recreate (reload) a fragment when i click on a OptionsItem from a Drawer Navigation Activity
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.fr:
LocaleHelper.setLocale(getBaseContext(), "Fr");
if(getVisibleFragment().isAdded()){
getVisibleFragment().getActivity().recreate();
}
return true;
case R.id.ar:
LocaleHelper.setLocale(getBaseContext(), "Ar");
if(getVisibleFragment().isAdded()){
getVisibleFragment().getActivity().recreate();
}
return true;
case R.id.en:
LocaleHelper.setLocale(getBaseContext(), "En");
if(getVisibleFragment().isAdded()){
getVisibleFragment().getActivity().recreate();
}
return true;
case R.id.es:
LocaleHelper.setLocale(getBaseContext(), "Es");
if(getVisibleFragment().isAdded()){
getVisibleFragment().getActivity().recreate();
}
return true;
}
return super.onOptionsItemSelected(item);
}
when i click on an Option i get this error :
java.lang.IllegalStateException: Fragment NewsMainFragment{9a39a2f} not attached to a context
how can i achieve this properly ?