Я хочу использовать DatePickerFragment внутри PreferenceFragment для даты рождения. Можем ли мы использовать его так же, как мы используем EditTextPreference или что-то еще, что нам нужно использовать. Я знаю, как базовые функции DatePickerFragemnt и PreferenceFragment.Как использовать DatePickerFragment внутри PreferenceFragment для получения даты
Любая помощь предоставляется.
Edited
.xml файл для Preferences
<PreferenceCategory android:title="@string/pref_profile_setting" >
<EditTextPreference
android:title="@string/pref_user_name"
android:summary="@string/pref_user_name_summary"
android:key="prefName"/>
<com.mypkg.DatePickerFragment
android:title="@string/pref_gender"
android:summary="@string/pref_postcode_summary"
android:key="prefDob"
/>
<ListPreference
android:title="@string/pref_gender"
android:summary="@string/pref_postcode_summary"
android:key="prefGender"
android:entries="@array/gender"
android:entryValues="@array/gender_type"/>
</PreferenceCategory>
</PreferenceScreen>
Класс, который продлевал PreferenceFragment
public class MyFragment extends PreferenceFragment implements OnPreferenceChangeListener{
private EditTextPreference etNamePref;
private ListPreference lvGenderPref;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.pref_settings);
}
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container, Bundle paramBundle) {
View view = inflater.inflate(R.layout.fragment_settings, container, false);
initView();
return view;
}
private void initView() {
etNamePref = (EditTextPreference)findPreference(ConstantsUtil.PREF_NAME);
etNamePref.setOnPreferenceChangeListener(this);
}
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
if(key.equalsIgnoreCase(ConstantsUtil.PREF_NAME)){
etNamePref.setSummary(newValue.toString());
}
return false;
}
}
Затем, как я могу открыть это диалоговое предпочтение из PrefrenceFragment? Кроме того, какой элемент управления я поместил в xml-файл, чтобы показать дату и по выбору этого, я открою пользовательский фрагмент диалога. –
Вы можете добавить его непосредственно на экран настроек xml, –
Не работает так. Также, если он добавлен, то как вызвать DatePickerFragment вместо DialogPreference. ? –