Mam problem z uzyskaniem wskaźnika do Fragmentu, który jest obecnie widocznym fragmentem w FragmentTabhost.findFragmentByTag - szukanie fragmentu w FragmentTabHost - zawsze zerowy
mam SherlockFragmentActivity
nazywa SecondActivity
ładujący Tabhost od niego znajduje onCreate
metoda tak:
if (getSupportFragmentManager().findFragmentById(android.R.id.content) == null) {
Fragment f = new TabsFragment();
getSupportFragmentManager().beginTransaction().add(android.R.id.content, f, "tabsfragment").commit();
}
TabsFragment
jest SherlockFragment
podklasy z tej metody onCreate
do tworzenia zakładek
@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;
}
Teraz kiedy Jestem na drugiej karcie, mam zadanie tła wykonane w klasie, która jest inicjowana przez oryginalną aktywność SecondActivity
, a następnie nazywam to, co jest s w celu podania odniesienia do karty, ale zawsze zwraca wartość null!
NewsFragment newsView = (NewsFragment) delegate.getSupportFragmentManager().findFragmentByTag("Tab2");
Zmienna delegate
jest wskaźnik z powrotem do SecondActivity
kiedy zaczyna klasę tła.
Jak uzyskać wskaźnik do fragmentu karty? Czy mam rację, że "Tab2" ustawione podczas dodawania kart to Tag
dla fragmentu?
Świetna odpowiedź .. Ty oszczędza mój czas .. Wielkie dzięki dla Ciebie ... :) – Gunaseelan
doskonałą odpowiedź ..... –