FindFragmentByTag – buscando fragmento en FragmentTabHost – always null
Estoy teniendo problemas para obtener un puntero a un fragmento que es el fragmento visible en un FragmentTabhost.
Tengo una SherlockFragmentActivity
llamada SecondActivity
que carga el Tabhost de su método onCreate
como este:
- Cambiando dinámicamente los fragmentos dentro de un host de fichas de fragmentos?
- Reemplazar un fragmento a otro fragmento en el TabHost
- FragmentTabHost no crea vista dentro de Fragmento en android
- Cómo implementar pestañas personalizadas en Android como Instagram
- Fragmento superpuesto
if (getSupportFragmentManager().findFragmentById(android.R.id.content) == null) { Fragment f = new TabsFragment(); getSupportFragmentManager().beginTransaction().add(android.R.id.content, f, "tabsfragment").commit(); }
TabsFragment
es una subclase SherlockFragment
con este método onCreate
para crear las pestañas
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mTabHost = new FragmentTabHost(getActivity()); mTabHost.setup(getActivity(), getChildFragmentManager(), R.layout.tabs); mTabHost.addTab(mTabHost.newTabSpec("Tab1").setIndicator("Offers", getResources().getDrawable(R.drawable.offersale)), OfferListFragment.class, null); mTabHost.addTab(mTabHost.newTabSpec("Tab2").setIndicator("News", getResources().getDrawable(R.drawable.newspaper)), NewsFragment.class, null); return mTabHost; }
Ahora, cuando estoy en la segunda pestaña, tengo una tarea de fondo hecha en una clase que se inicia por la actividad original SecondActivity
, entonces llamo a esto que se supone que me da una referencia a la ficha, pero siempre devuelve null!
NewsFragment newsView = (NewsFragment) delegate.getSupportFragmentManager().findFragmentByTag("Tab2");
La variable delegate
es un puntero de regreso a SecondActivity
cuando se inicia la clase de fondo.
¿Cómo obtengo un puntero al fragmento de la pestaña? ¿Estoy equivocado que "Tab2" establecido al agregar las pestañas es la Tag
para el fragmento?
- ¿Son la etiqueta y el icono mutuamente excluyentes en un tabHost TabSpec setIndicator?
- IllegalStateException en FragmentManager
- Interfaz de Android
- Cómo crear un cuadro de diálogo con pestañas con Android que contiene fragmentos?
- ¿Es posible llamar manualmente onCreateView en un fragmento?
- El contenido de Tabhost no se muestra cuando actualizo android.support.v4
Realmente no me gusta responder a mis propias preguntas, pero es increíble lo que puede dormir en él. Este monstruo me da un puntero al fragmento en el tabhost
NewsFragment newsView = (NewsFragment) delegate .getSupportFragmentManager() .findFragmentByTag("tabsfragment") .getChildFragmentManager() .findFragmentByTag("Tab2");