J'ai un fragment parent qui est implémenté avec tabhost et ayant deux fragments enfant fragment A et B, et je veux appeler une méthode lorsque le fragment enfant est visible par l'utilisateur, j'ai utilisé setUserVisibleHint qui est une méthode Override. mais il n'est jamais appelé au cours de la fragement de l'enfant A ou B apparaît à l'utilisateur.méthode setUserVisibleHint jamais appelée avec fragment tabhost
Ce qui suit est le code qui ont utilisé:
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
Log.d("setUserVisibleHint***called",""+isVisibleToUser);
if(isVisibleToUser){
calltoMethod();
}
}
et le code fragment Parent est:
public class ParentFragment extends Fragment{
private TabHost planTabHost;
LinearLayout tabMainLayout;
private static View plansView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
plansView = inflater.inflate(R.layout.plansfragment, container, false);
planTabHost = (TabHost)plansView. findViewById(android.R.id.tabhost);
planTabHost.setup();
planTabHost.addTab(planTabHost.newTabSpec("tab1").setIndicator("A").setContent(R.id.Afragment));
planTabHost.addTab(planTabHost.newTabSpec("tab2").setIndicator("B").setContent(R.id.Bfragment));
planTabHost.setCurrentTab(1);
}
}
La méthode setOnTabChangedListner est appelée uniquement lorsque l'utilisateur appuie sur l'onglet. mais je veux charger le fragment B sans interaction de l'utilisateur. – shobhan