2017-09-18 4 views
0

Je souhaite transmettre une donnée de ma classe d'adaptateur à un autre fragment à l'aide de startActivityForResult. Si j'ai utilisé le code ci-dessous, la même activité le recrée, je ne le veux pas. Comment résoudre ce problème?Passage de données d'un adaptateur à un fragment en utilisant startActivityForResult dans la même activité

Bundle mBundle = new Bundle(); 
mBundle.putString(Constants.SELECTED_PLOCATION, pLocation); 
mBundle.putString(Constants.SELECTED_RLOCATION, rLocation); 
mBundle.putString(Constants.SELECTED_FROM, selectedFrom); 
mBundle.putString(Constants.FROM_TYPE, fromType); 
mBundle.putString(Constants.AREA_TYPE, Constants.AREA); 
getActivity().getFragmentManager().popBackStackImmediate(); 
Intent mIntent = new Intent(getActivity(), AuthorizedCustomerActivity.class); 
getActivity().startActivityForResult(mIntent, PICK_LOCATION_REQUEST, mBundle); 
+0

Veuillez spécifier où se trouve votre classe d'adaptateur et votre fragment? Dans quel fragment d'activité existe et dans quel adaptateur d'activité existe-t-il? –

Répondre

0

Utiliser le code ci-dessous pour le transfert de données d'un adaptateur à un fragment;

Fragment fragment = new YourFragmentName(); 
FragmentManager fm = getActivity().getSupportFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 
ft.replace(R.id.content_frame, fragment); 
ft.commit(); 

Bundle mBundle= new Bundle(); 
mBundle.putString(Constants.SELECTED_PLOCATION, pLocation); 
mBundle.putString(Constants.SELECTED_RLOCATION, rLocation); 
mBundle.putString(Constants.SELECTED_FROM, selectedFrom); 
mBundle.putString(Constants.FROM_TYPE, fromType); 
mBundle.putString(Constants.AREA_TYPE, Constants.AREA); 
fragment.setArguments(mBundle);