2013-09-26 65 views
2

我想在FragmentTabHost与片段沟通的FragmentTabHost

片段 - >活动完成通信与片段沟通!带有一个接口。

但我不能创造一个沟通活动 - >碎片,因为我创造了这样的片段:

mTabHost.addTab(
      mTabHost.newTabSpec("tab2").setIndicator("Affichage", 
        getResources().getDrawable(android.R.drawable.star_on)), 
      MySelectionFragment.class, null); 

MySelectionFragment是一类不喜欢new MySelectionFragment()

一个片段,我不知道如何沟通带班:/

在此先感谢!

+0

我不能找到在['TabHost']的任何方法(http://developer.android.com/reference/android/widget /TabHost.html)作为'addTab(TabSpec,Class,????)'。你说你用了什么方法? – gunar

+0

我也没有。我在答案中发现它:http://stackoverflow.com/questions/17227855/tabhost-with-fragments-and-fragmentactivity – nsvir

+0

...你实际上使用了'FragmentTabHost'。当您发布问题时请详细说明。不要把人引向另一个方向。 – gunar

回答

2

诀窍是重写onAttach方法是这样的:

@Override 
public void onAttachFragment(android.support.v4.app.Fragment attachedFragment) { 
    super.onAttachFragment(attachedFragment); 

    if (attachedFragment.getClass().equals((ObjectA.class)) { 
     mObjectA = (ObjectA)attachedFragment; 
    } 
    if (attachedFragment.getClass().equals((ObjectB.class)) { 
     mObjectB = (ObjectB) attachedFragment; 
    } 
}