Tengo una actividad principal con dos fragments, uno muestra la información general y el otro el mapa.
Los valores de la base de datos los recojo en el método de la actividad principal:
public void processFinish(String outlatitud,String outlongitud,String outnombre, String outimg,…){
if(viewPager.getCurrentItem() == 0) {
Arqueolog fragmentArte= (Arqueolog)viewPager.getAdapter().instantiateItem( viewPager, viewPager.getCurrentItem());
fragmentArte.recogerDatos(outnombre, outimg,…);
}else if(viewPager.getCurrentItem() == 1){
Mapa fragmentArteMapa = (Mapa)viewPager.getAdapter().instantiateItem(viewP ager, viewPager.getCurrentItem());
fragmentArteMapa.recogerDatos(outlatitud,outlongit ud,outnombre);
}
}
Y la paso a los fragments con una instancia de estos y el método recogenDatos que en los fragmens queda así:
Fragment Arqueolog:
public void recogerDatos(final String nombre, final String imagen,…){
TextView txtArteGeneral = (TextView) getActivity().findViewById(R.id.nombreArteGeneral) ;
txtArteGeneral.setText(nombre);
…
}
Fragment Mapa:
public void recogerDatos(final String outlatitud, final String outlongitud,final String outnombre){
TextView latPosicion= (TextView)getActivity().findViewById(R.id.textMapa Lat);
latPosicion.setText(outlatitud);
TextView lngPosicion= (TextView) getActivity().findViewById(R.id.textMapaLong);
lngPosicion.setText(outlongitud);
TextView nombrePosicion= (TextView) getActivity().findViewById(R.id.textMapaArte);
nombrePosicion.setText(outnombre);
}
El problema que tengo es que cuando entro en la actividad al ser getCurrentItem() ==0 me pasa los valores al primer fragment correctamente, pero cuando cambio de tab a getCurrentItem() ==1 no me pasa los valores al fragment del mapa.
Mi pregunta es cómo puedo hacer para que cuando cambio de tab me pase esos valores.
Gracias de antemano a quien me pueda orientar a una solución.