Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo se obtiene un DatePicker de un DatePickerDialog?

Tengo una actividad que está apareciendo un android.app.DatePickerDialog.

DatePickerDialog dialog = new DatePickerDialog(this, startDateSetListener, start_cal.get(Calendar.YEAR), start_cal.get(Calendar.MONTH), start_cal.get(Calendar.DATE)); 

Quiero conseguir en la vista de DatePicker del DatePickerDialog de modo que pueda fijar las fechas mínimas y máximas. La API de referencia dice que hay un método getDatePicker y que ha estado allí desde la API 1, pero no es válido, mi ide no le gusta.

 DatePicker picker = dialog.getDatePicker(); 

"El método getDatePicker () no está definido para el tipo DatePickerDialog"

¿Cualquier persona sabe qué API era el método creado adentro o cómo puedo conseguir al DatePicker para corregir fechas min / max?

Estoy utilizando API 7, plataforma 2.1.

2 Solutions collect form web for “¿Cómo se obtiene un DatePicker de un DatePickerDialog?”

A pesar de que el método getter sólo está disponible en Honeycomb y superior (como dmon señaló correctamente), todavía puede obtener bastante fácilmente el acceso al objeto DatePicker encapsulado por el DatePickerDialog mediante la reflexión. Se verá algo como esto:

 DatePickerDialog dialog = ... // create dialog Field mDatePickerField = dialog.getClass().getDeclaredField("mDatePicker"); mDatePickerField.setAccessible(true); DatePicker mDatePickerInstance = (DatePicker) mDatePickerField.get(dialog); 

A partir de este momento, tiene una referencia al objeto DatePicker interno y debería poder cambiarlo a su gusto. Por favor, tenga cuidado con cualquier error tipográfico obvio, ya que ingresé esto directamente en el navegador.

Se malinterpretó, sólo está disponible desde la API 11:

"Public DatePicker getDatePicker () Desde: Nivel de API 11". Mira de cerca .

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.