Alireza Madad Alireza Madad - 10 months ago 570
Android Question

refresh fragment that gone to activity after back pressed in that activity

I have a fragment in a tabbed activity.It redirects from onclicklistener to an activity.After changes made in that activity.User will press back button.So in my fragment i need a listener that is fired after come back from that activity.Or maybe after user made the changes I give user a button to go back to that fragment and reload the fragment meanwhile.I don't know either way.
i tried onResume() onStart() on every thing didn't work because nothing happened to fragment in that transaction.
I tried addOnBackStackChangedListener() but it should be placed in the activity not fragment.
so i don't know what to do?
thanks for your time

public static class PlaceholderFragment extends Fragment {
* The fragment argument representing the section number for this
* fragment.
private static final String ARG_SECTION_NUMBER = "section_number";

* Returns a new instance of this fragment for the given section
* number.
public static PlaceholderFragment newInstance(int sectionNumber) {
PlaceholderFragment fragment = new PlaceholderFragment();
Bundle args = new Bundle();
args.putInt(ARG_SECTION_NUMBER, sectionNumber);
return fragment;

public PlaceholderFragment() {

public View onCreateView(LayoutInflater inflater, ViewGroup container,
final Bundle savedInstanceState) {
final View rootView = inflater.inflate(R.layout.fragment_history, container, false);
new FragmentManager.OnBackStackChangedListener() {
public void onBackStackChanged() {
//TextView textView = (TextView) rootView.findViewById(;
//textView.setText(getString(R.string.section_format, getArguments().getInt(ARG_SECTION_NUMBER)));
return rootView;

public void onStart() {
public void onCreate(Bundle savedInstanceState) {

Answer Source

Let's say you have two two activities A and B.Initially Fragment f1 is added to A.When you click on item in f1 start activity B with startActivityForResult (Intent intent, int requestCode) and in onActivityResult(int requestCode, int resultCode, Intent data) either update the fragment data(if possible) or reload the fragment.