プロジェクトをコンパイルしようとすると、「FragmentTransaction 型のメソッド add(int, Fragment) は、引数 (int, FragmentPreferences) には適用できません」というエラーが発生します。私の知る限り、PreferenceFragment はフラグメントですか? 私は Android 4.0 用に開発していますが、私のプロジェクトには ViewPager も含まれているため、android-support-v4 ライブラリを使用する必要があります。http://developer.android.com/guide/topics/ui/settings.html#Fragmentでこの例を見つけました:
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new SettingsFragment())
.commit();
しかし、私はそれを機能させることができません。
私のコード:
case R.id.menu_settings:
FragmentPreferences prefs = new FragmentPreferences();
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.add(android.R.id.content, prefs);
ft.commit();
break;
フラグメント設定:
public class FragmentPreferences extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}