我想修復datePickerDialog中的月份和年份,但希望用戶自己選擇日期。可能嗎? 例如:DatePickerDialog將固定用的五月和2015年,用戶現在只能更改1之間的日期31Android DatePickerDialog更改日期
回答
您可以使用下面的代碼行
public class First extends Activity {
DatePicker _date;
Date date_current;
Date date_future;
int days_count=0;
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.first);
Calendar ci = Calendar.getInstance();
String CiDateTime = ci.get(Calendar.YEAR) + "-" +
(ci.get(Calendar.MONTH) + 1) + "-" +
ci.get(Calendar.DAY_OF_MONTH);
SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yyyy");
try {
date_current = f.parse(CiDateTime);
long milliseconds = date_current.getTime();
_date.setMinDate(milliseconds);//here is _date is DatePicker Object
int monthMaxDays = ci.getActualMaximum(Calendar.DAY_OF_MONTH);
if(monthMaxDays>ci.get(Calendar.DAY_OF_MONTH))
{
days_count = monthMaxDays-ci.get(Calendar.DAY_OF_MONTH);
String CiDateMax = ci.get(Calendar.YEAR) + "-" +
(ci.get(Calendar.MONTH) + 1) + "-" +
ci.get(Calendar.DAY_OF_MONTH)+days_count;
date_future = f.parse(CiDateMax);
long milliseconds_MAx = date_future.getTime();
_date.setMaxDate(milliseconds_MAx);
}
else
{
_date.setMaxDate(milliseconds);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@ priya..Is對你是可行的..如果有任何疑慮比PLZ讓我知道 –
使用UR代碼今天的日期將設置爲mindate,但我希望用戶自己設置日期,而月和年是固定的。 – Anupriya
好的..我會得到答案...比我會盡快更新 –
你可以得到底層的DatePicker從DatePickerDialog(通過簡單地調用getDatePicker()),並使用設置在其邊界:
@Priya如果你想更多的解釋與示例比讓我知道。 –
我解決了我以下列方式問題:
Calendar cal = Calendar.getInstance();
DatePickerDialog dialog = new DatePickerDialog(this, myDateSetListener, year, month,
day);
cal.set(Calendar.MONTH, userMonthValue);
cal.set(Calendar.YEAR, userYearValue);
cal.set(Calendar.DAY_OF_MONTH, 1);
dialog.getDatePicker().setMinDate(cal.getTimeInMillis() - 1000);
// code to set max date
cal = Calendar.getInstance();
cal.set(Calendar.MONTH, userMonthValue);
cal.set(Calendar.YEAR, userYearValue);
cal.set(Calendar.DAY_OF_MONTH, cal.getMaximum(Calendar.DAY_OF_MONTH));
dialog.getDatePicker().setMaxDate(cal.getTimeInMillis() - 1000);
現在我的日期選擇器對話框是固定的月和年,,,和用戶只能更改1之間的日期和30或31
謝謝...對我有幫助 –
- 1. 更改Android日期,日期和月份的顯示格式DatePickerDialog
- 2. 在DatePickerDialog中更改日期格式?
- 3. DialogFragment DatePickerDialog不返回更改日期
- 4. 如何更改datepickerdialog上顯示的日期?
- 5. 我想更改DatePickerDialog
- 6. Android DatePickerDialog上的最大日期
- 7. DatepickerDialog的隱藏日期和月份android
- 8. Android - 在datepickerdialog中隱藏日期字段
- 9. Android中的DatePickerDialog,日期驗證
- 10. 如何在DatePickerDialog Android的今日日期之前禁用日期?
- 11. 在DatePickerDialog Android的今天日期之前禁用日期?
- 12. 如何在DatePickerDialog的今天日期之前禁用日期Android
- 13. DatePickerDialog打開當前日期
- 14. android更改語言日期
- 15. android:更改日期格式
- 16. Android的DatePickerDialog掩碼日曆
- 17. 更改日曆日期的顏色android
- 18. 安卓:如何更改DatePickerDialog
- 19. 隱藏日期選擇器在datepickerdialog
- 20. Android日曆更改時間更改日期至今天
- 21. 更改日期
- 22. 更改日期
- 23. 更改日期
- 24. android DatePickerDialog
- 25. 更改按鈕的DatePickerDialog的順序4.0.3
- 26. 使用DatePickerDialog選擇多個日期
- 27. datePickerDialog如何設置顯示日期?
- 28. DatePickerDialog總是打開當前日期
- 29. Android:手動更改日期DatePicker
- 30. Android的更改日期格式
請參閱此鏈接http://stackoverflow.com/questions/21321789/android-datepicker-change-to-only-month-and-year –
@Priya請找到我的下面的解決方案 –
如果你只是不能回答它的哦,但你爲什麼低調的闕這是一個有效的問題,根據我的項目需要。 – Anupriya