Método de llamada desde Fragmento en ViewPager
Tengo un ViewPager con algunos fragmentos adentro. Al crear cada fragmento llamo constructor donde paso nombre de este Fragmento:
public KwejkFragment(String tagName) { this.fragmentTag = tagName; }
En MainActivity, por supuesto, creo instancia Adapter y ViewPager. Entonces fijé el oyente de ViewPager:
- ¿Cómo puedo establecer la visibilidad de un elemento de ActionBar en fragmento diferente
- No se puede encontrar el girador después de girar la pantalla
- Agregue fragmento dinámicamente con LayoutParams
- NullPointerException al cambiar entre fragmentos que contienen RecyclerView
- ¿Por qué utilizar Fragment # setRetainInstance (boolean)?
mPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { FragmentManager fm = getSupportFragmentManager(); Fragment fr = mAdapter.getItem(position); if(fr.equals(KwejkFragment.class)) { (KwejkFragment) fr.refresh(); //I'm trying to call method here for example showMeSomething() but it is unavailable. } }
Y aquí me gustaría:
1) Obtener Fragmento visible actual en PagerView
2) Llame al método especificado de este Fragmento
¿Como hacer esto?
- Android muestra teclado suave cuando el fragmento onResume
- Android ViewPager llama manualmente a PageTransformer transformPage
- Cualquier mejora de código en la adición / sustitución de fragmentos
- NPE en Fragment.setUserVisibleHint () cuando se utiliza ViewPager
- ListView vacía después de volver al fragmento
- No se puede resolver el método getSupportActionBar () en fragmento
- GetSupportActionBar desde el interior de Fragment ActionBarCompat
- Android FragmentTransaction commit ¿Cuándo?
En primer lugar, hacer que el método en el fragmento de público y luego utilizar el siguiente código
mPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { FragmentManager fm = getSupportFragmentManager(); Fragment fr = mAdapter.getItem(position); if(fr instanceOf KwejkFragment)) { fr.refresh(); } }
Poner el depurador en el método de actualización y comprobar si se está llamando o no.
Este código funcionará. Disfruta
- ¿Cómo Android decide qué aplicación puede escribir primero en el disco?
- Utilizar el mismo fragmento varias veces en la misma actividad / diseño