投稿

ラベル(Fragment)が付いた投稿を表示しています

android.app.Fragmentとandroid.support.v4.app.Fragmentの共存で起こるエラー

今回は、android.app.Fragmentとandroid.support.v4.app.Fragmentの共存で起こるエラーについてです。 例えば、以下のようなソースでエラーとなる場合があります。 [ソース] public void onNavigationDrawerItemSelected(int position) { FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction()    .replace(R.id.container, MyFragment.newInstance(position))    .commit();   } [エラー] replace(int, android.support.v4.app.Fragment) in FragmentTransaction cannot be applied to (int, XXX.MyFragment) これは、getSupportFragmentManager()で取得したFragmentManagerのreplace()メソッドに於いて、android.app.FragmentによるMyFragmentクラスのインスタンスを引数にとることは出来ないというエラーです。 対策として、 この場合、MyFragmentクラスに於けるインポートを import android.app.Fragment; から import android.support.v4.app.Fragment; に変更すれば解決します。