1

この質問はかなり基本的なものですが、新しいものだと思います。これで、メインアクティビティの下にFragmentTransactionがあり(以下を参照)、これらのフラグメントの1つから「置換」を実行できるようにしたいと思います。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);
        }
        }


}
4

2 に答える 2

2

フラグメント トランザクションを使用するには、次のようにします。

                FragmentManager fmu = getSupportFragmentManager();
                FragmentTransaction ftu = fmu.beginTransaction();
                RSSFragment rssfrag;
                ftu.replace(R.id.frame_fragment, rssfrag).commit();
于 2012-08-20T16:41:21.160 に答える
0

onCreate() メソッドでインスタンス化するクラス変数 rootActivity を宣言します。

public class yourclass
Activity rootActivity;
public void onCreate(){
     super.onCreate();
     rootActivity = getActivity();
}
于 2012-08-20T16:38:02.590 に答える