我是一名android開發人員。 我想使用DatePickerDialog。 但這個小部件顯示年 - 月。 我想顯示月 - 年。 如何?我想更改DatePickerDialog
0
A
回答
0
試試這個 -
((ViewGroup) datePickerDialog.getDatePicker()).findViewById(Resources.getSystem().getIdentifier("day", "id", "android")).setVisibility(View.GONE);
它適用於>= 11
如果您需要自定義選擇器按您的要求,然後更好地創建自己的使用NumberPickers,這裏是例子 -
public class MonthYearPickerDialog extends DialogFragment {
private static final int MAX_YEAR = 2099;
private DatePickerDialog.OnDateSetListener listener;
public void setListener(DatePickerDialog.OnDateSetListener listener) {
this.listener = listener;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
// Get the layout inflater
LayoutInflater inflater = getActivity().getLayoutInflater();
Calendar cal = Calendar.getInstance();
View dialog = inflater.inflate(R.layout.date_picker_dialog, null);
final NumberPicker monthPicker = (NumberPicker) dialog.findViewById(R.id.picker_month);
final NumberPicker yearPicker = (NumberPicker) dialog.findViewById(R.id.picker_year);
monthPicker.setMinValue(1);
monthPicker.setMaxValue(12);
monthPicker.setValue(cal.get(Calendar.MONTH) + 1);
int year = cal.get(Calendar.YEAR);
yearPicker.setMinValue(year);
yearPicker.setMaxValue(MAX_YEAR);
yearPicker.setValue(year);
builder.setView(dialog)
// Add action buttons
.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
listener.onDateSet(null, yearPicker.getValue(), monthPicker.getValue(), 0);
}
})
.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
MonthYearPickerDialog.this.getDialog().cancel();
}
});
return builder.create();
}
}
佈局 -
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="horizontal">
<NumberPicker
android:id="@+id/picker_year"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="20dp"
android:layout_marginRight="20dp">
</NumberPicker>
<NumberPicker
android:id="@+id/picker_month"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</NumberPicker>
</LinearLayout>
</LinearLayout>
要顯示的對話框 -
MonthYearPickerDialog pd = new MonthYearPickerDialog();
pd.setListener(this);
pd.show(getFragmentManager(), "MonthYearPickerDialog");
參考 - https://stackoverflow.com/a/31653048/1741586
希望它會工作:)
相關問題
- 1. Android DatePickerDialog更改日期
- 2. 安卓:如何更改DatePickerDialog
- 3. 如何更改DatePickerDialog的區域設置?
- 4. DialogFragment DatePickerDialog不返回更改日期
- 5. 在DatePickerDialog中更改日期格式?
- 6. 更改DatePickerDialog的按鈕文本
- 7. 更改按鈕的DatePickerDialog的順序4.0.3
- 8. DatePickerDialog
- 9. 我想改變
- 10. 我想要動態更改UIDatePicker的datePickerMode
- 11. 我想將按鈕更改爲禁用
- 12. 我想更改網址參數
- 13. 我想更改頁面標題位置
- 14. 我想將iPad資源更改爲iPhone
- 15. 我想更改UITextView的字體大小
- 16. 我想點擊更改課程「活動」,
- 17. 我不想刷新更改片段
- 18. 我不想更改<span>懸停
- 19. 我想更改Rstudio中的max-ppsize
- 20. 我想更改NetBeans字體大小
- 21. 我的圖標不想更改大小
- 22. 我想在Facebook中更改網址。
- 23. iphone uibutton:我想更改UIControlStateNormal圖片
- 24. 我想更改增量設置
- 25. 我想更改索引中的網址
- 26. 更改Android日期,日期和月份的顯示格式DatePickerDialog
- 27. Android:在DatePickerDialog/TimePickerDialog中更改按鈕文本
- 28. 如何更改顏色或自定義DatePickerDialog?
- 29. Android:如何更改Theme.Holo.Light.Dialog.MinWidth中的DatePickerDialog顏色?
- 30. 如何更改datepickerdialog上顯示的日期?
檢查http://stackoverflow.com/questions/14190968/android-format-date -ymm-dd-yyyy-date-datepicker – Evgeny