次の問題があります。jfeinstein10のスライド メニューを実装しており、メニュー オプションごとに別のフラグメント クラスを呼び出します。私のメニュー オプションには、プロファイルと呼ばれる選択肢があり、クリックすると、設定を含む新しいフラグメントが表示されます。通常は、PreferenceFragment を使用してこれを行うことができますが、Fragment 型のクラスを想定しているため、スライド メニューでは機能しません。
これがアイテムクリック時の私のコードです。
@Override
public void onListItemClick(ListView lv, View v, int position, long id) {
Fragment newContent = null;
Class<?> cls = null;
switch (position) {
case 0: /*this is the one that I want to edit*/
newContent = new profileFragment();
break;
}
if (newContent != null)
switchFragment(newContent);
}
フラグメントで設定を表示するにはどうすればよいですか? 通常、私はこれを行います:
public class profileFragment extends PreferenceFragment{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
しかし、Fragment ではなく PreferenceFragment を拡張するため、それは機能しません。