Simon Ics Date Picker Dialog бросает android.view.InflateException: двоичная строка XML-файла # 20: ошибка раздувания класса net.simonvt.widget.DatePicker

Я использую Simon ICS Date Picker Library ( https://github.com/SimonVT ) в своем приложении для Android. У меня есть кнопка даты, если я нажму на эту кнопку, в диалоговом окне будет отображаться значок yics datepicker. Моя проблема: если я нажимаю кнопку, она не отображает диалоговое окно datepicker, но появляется следующая ошибка:

03-02 10:46:59.521: E/AndroidRuntime(911): android.view.InflateException: Binary XML file line #20: Error inflating class net.simonvt.widget.DatePicker 03-02 10:46:59.521: E/AndroidRuntime(911): at android.view.LayoutInflater.createView(LayoutInflater.java:606) 03-02 10:46:59.521: E/AndroidRuntime(911): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680) 03-02 10:46:59.521: E/AndroidRuntime(911): at android.view.LayoutInflater.inflate(LayoutInflater.java:466) 03-02 10:46:59.521: E/AndroidRuntime(911): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 03-02 10:46:59.521: E/AndroidRuntime(911): at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 03-02 10:46:59.521: E/AndroidRuntime(911): at net.simonvt.app.DatePickerDialog.<init>(DatePickerDialog.java:103) 03-02 10:46:59.521: E/AndroidRuntime(911): at net.simonvt.app.DatePickerDialog.<init>(DatePickerDialog.java:74) @Override protected Dialog onCreateDialog(int id) { switch (id) { case START_DATE_PICKER_ID: mCalendar.setTimeInMillis(mStartMillis); year = mCalendar.get(Calendar.YEAR); monthOfYear = mCalendar.get(Calendar.MONTH); dayOfMonth = mCalendar.get(Calendar.DAY_OF_MONTH); return new DatePickerDialog(ListPillBoxActivity.this, startPillBoxDateListener, year, monthOfYear, dayOfMonth); case END_DATE_PICKER_ID: mCalendar.setTimeInMillis(mEndMillis); year = mCalendar.get(Calendar.YEAR); monthOfYear = mCalendar.get(Calendar.MONTH); dayOfMonth = mCalendar.get(Calendar.DAY_OF_MONTH); return new DatePickerDialog(ListPillBoxActivity.this, endPillBoxDateListener, year, monthOfYear, dayOfMonth); } return null; } 

Ошибка указала на следующую строку в обоих случаях:

  return new DatePickerDialog(ListPillBoxActivity.this, startPillBoxDateListener, year, monthOfYear, dayOfMonth); 

Все параметры передаются правильно datePickerDialog, но есть проблема в раздувании диалога

Любая помощь оценивается ….

Я столкнулся с той же проблемой. Решение состоит в добавлении трех элементов в ваш стиль, например, в DatePickerSamples:

 <style name="SampleTheme" parent="@android:style/Theme"> <item name="calendarViewStyle">@style/Widget.Holo.CalendarView</item> <item name="datePickerStyle">@style/Widget.Holo.DatePicker</item> <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item> </style> 

Основываясь на том, что сказал @ham,

После добавления этих строк в качестве ресурсов xml:

 <style name="SampleTheme" parent="@android:style/Theme"> <item name="calendarViewStyle">@style/Widget.Holo.CalendarView</item> <item name="datePickerStyle">@style/Widget.Holo.DatePicker</item> <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item> </style> 

Необходимо добавить этот атрибут в свой тег application в AndroidManifest:

 android:theme="@style/SampleTheme" 

Также не пропустите:

 <!-- Copy one of these attributes to your own theme (choose either dark or light). <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item> <item name="numberPickerStyle">@style/NPWidget.Holo.Light.NumberPicker</item> -->