2016-05-23 15 views
-6

アクティビティをフラグメントに置き換えたい場合、このコードは機能しません。アンドロイドで活動の断片を追加するには?

Intent intent = new Intent(Activity.this, Fragment.class); 
startActivity(intent); 
finish(); 
+1

いいえ、方法はありません。あなたの総コードを記入してください。 –

+0

1つのフラグメント –

+2

フラグメントをアクティビティにロードしようとしていますか? – Vilva

答えて

0

public class FragmentName extends android.support.v4.app.Fragment {} 

ようFragmenクラスを作成し、あなたはキャストすることができますあなたの活動にこのよう

@Override 
public void replaceFragment(Fragment fragment, boolean addToBackStack) { 

    FragmentTransaction transaction = getSupportFragmentManager() 
      .beginTransaction(); 

    if (addToBackStack) { 
     transaction.addToBackStack(null); 

    } else { 
     getSupportFragmentManager().popBackStack(null, 
       FragmentManager.POP_BACK_STACK_INCLUSIVE); 

    } 
    transaction.replace(R.id.flContent, fragment); 
    transaction.commitAllowingStateLoss(); 
    getSupportFragmentManager().executePendingTransactions(); 

} 

を試してみて、この

YourFragment mYourFrag = new YourFragment(); 
    replaceFragment(mYourFrag , false); 
0

のように使用します表示するアクティビティ:

1

アクティビティがない場合、フラグメントにはアクティビティが存在しないため、アクティビティからフラグメントに切り替えることはできません。つまり、フラグメントはアクティビティ内で動作します。
基本的に、フラグメントは主にマルチペインの画面を作成するために使用されます。

上記のコード例で説明したように(アクティビティに関連付けられた)フラグメントを置き換えてUIを変更できる場合は、アクティビティ内でアクティビティ内で操作を行います。

+1

ありがとうLonnie :) –

関連する問題