android – 如何从DatePickerDialog获取DatePicker?

前端之家收集整理的这篇文章主要介绍了android – 如何从DatePickerDialog获取DatePicker?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个活动,弹出一个 android.app.DatePickerDialog.
DatePickerDialog dialog =  new DatePickerDialog(this,startDateSetListener,start_cal.get(Calendar.YEAR),start_cal.get(Calendar.MONTH),start_cal.get(Calendar.DATE));

我想从DatePickerDialog中获取DatePicker视图,以便我可以设置最小和最大日期. API参考指出,有一个方法getDatePicker,并且自API 1以来一直存在,但它是无效的,我的ide不喜欢它.

DatePicker picker = dialog.getDatePicker();

“对于DatePickerDialog类型,getDatePicker()方法未定义”

任何人知道API是创建的方法,或者如何获取到DatePicker来编辑最小/最大日期?

我正在使用API​​ 7,Platform 2.1.

解决方法

尽管在Honeycomb和以上(除了dmon正确指出)中,getter方法只能使用,但是仍然可以很容易地使用反射来访问DatePickerDialog封装的DatePicker对象.看起来像这样:
DatePickerDialog dialog = ... // create dialog
Field mDatePickerField = dialog.getClass().getDeclaredField("mDatePicker");
mDatePickerField.setAccessible(true);
DatePicker mDatePickerInstance = (DatePicker) mDatePickerField.get(dialog);

从此,您可以引用内部的DatePicker对象,您应该可以根据自己的喜好进行更改.请注意任何明显的错字,因为我直接进入浏览器.

猜你在找的Android相关文章