我确定这个问题非常基本,但我很新。 现在我在我的主要活动下有一个FragmentTransaction(见下文),我希望能够从其中一个片段中执行“替换”。我相信它会涉及到getActivity(),但我不确定如何做到这一点?
如果有人能给我一个例子,那将是很好的,在此先感谢:)
public void onTabSelected(Tab tab, FragmentTransaction ft) {
{
if(tab.getPosition()==0)
{
firstFragment frag = new firstFragment();
ft.replace(android.R.id.content, frag);
}
else if(tab.getPosition()==1)
{
newsFragment frag = new newsFragment();
ft.replace(android.R.id.content, frag);
}
else if(tab.getPosition()==2)
{
thirFragment frag = new thirFragment();
ft.replace(android.R.id.content, frag);
}
else if(tab.getPosition()==3)
{
calendar frag = new calendar();
ft.replace(android.R.id.content, frag);
}
else if(tab.getPosition()==6)
{
linksFragment frag = new linksFragment();
ft.replace(android.R.id.content, frag);
}
else if(tab.getPosition()==5)
{
contactFragment frag = new contactFragment();
ft.replace(android.R.id.content, frag);
}
}
}
答案 0 :(得分:2)
要使用片段事务,请执行以下操作:
FragmentManager fmu = getSupportFragmentManager();
FragmentTransaction ftu = fmu.beginTransaction();
RSSFragment rssfrag;
ftu.replace(R.id.frame_fragment, rssfrag).commit();
答案 1 :(得分:0)
声明一个类变量rootActivity,即onCreate()方法中的实例化。
public class yourclass
Activity rootActivity;
public void onCreate(){
super.onCreate();
rootActivity = getActivity();
}