You can also achieve this by using Interface,  using an EventBus like LocalBroadcastManager, or starting a new Activity with an Intent and some form of flag passed into its extras Bundle or something else.
Here is an example about using Interface: 
1. Add function sendDataToActivity() into the interface (EventListener).
//EventListener.java
public interface EventListener {
    public void sendDataToActivity(String data);
}
2. Implement this functions in your MainActivity.
// MainActivity.java
public class MainActivity extends AppCompatActivity implements EventListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    @Override
    public void sendDataToActivity(String data) {
        Log.i("MainActivity", "sendDataToActivity: " + data);
    }
}
3. Create the listener in MyFragment and attach it to the Activity. 
4. Finally, call function using listener.sendDataToActivity("Hello World!").
// MyFragment.java 
public class MyFragment extends Fragment {
    private EventListener listener;
    @Override
    public void onAttach(Activity activity)
    {
        super.onAttach(activity);
        if(activity instanceof EventListener) {
            listener = (EventListener)activity;
        } else {
            // Throw an error!
        }
    }
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_my, container, false);
        // Send data
        listener.sendDataToActivity("Hello World!");
        return view;
    }
    @Override
    public void onDetach() {
        super.onDetach();
        listener = null;
    }
}
Hope this will help~