Я совершенно новичок в программировании на платформе Android, но мне интересно узнать о нем больше.Сейчас я делаю это с помощью пошагового руководства.Просто чтобы познакомиться со средой программирования.У меня есть знание языка Java, хотя я бы не сказал, что у меня это хорошо получается.
Что касается проблемы, то, что я создаю, - это простая викторина для устройств Android.На экране настроек я использую DatePickerDialog для дня рождения пользователя.Только когда я запускаю его на своем устройстве Android (Samsung Galaxy S i9000) или на эмуляторе, он вылетает при попытке открыть DatePickerDialog.
Используемый код:
final TextView dob = (TextView) findViewById(R.id.TextView_DOB_Info);
DatePickerDialog dateDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Time dateOfBirth = new Time();
dateOfBirth.set(dayOfMonth, monthOfYear, year);
long dtDob = dateOfBirth.toMillis(true);
dob.setText(DateFormat.format("MMMM dd, yyyy", dtDob));
Editor editor = mGameSettings.edit();
editor.putLong(GAME_PREFERENCES_DOB, dtDob);
editor.commit();
}
}, 0, 0, 0);
return dateDialog;
Может кто-нибудьпосмотрим, делаю ли я здесь что-то не так?При запуске я получаю IllegalArgumentException в этом методе.Я использую Eclipse для программирования на Android, но я также довольно новичок в этой программе (я больше знаком с Netbeans), я все еще пытаюсь выяснить, как правильно отлаживать приложение Android.
Если кто-то может помочь, он будет очень признателен!С уважением, Флорис
РЕДАКТИРОВАТЬ: В соответствии с запросом я добавил строки LogCat:
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): FATAL EXCEPTION: main
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): java.lang.IllegalArgumentException: current should be >= start and <= end
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.widget.NumberPicker.setCurrent(NumberPicker.java:362)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.widget.DatePicker.updateDaySpinner(DatePicker.java:487)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.widget.DatePicker.updateSpinners(DatePicker.java:471)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.widget.DatePicker.init(DatePicker.java:467)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.DatePickerDialog.<init>(DatePickerDialog.java:154)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.DatePickerDialog.<init>(DatePickerDialog.java:113)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at com.androidbook.triviaquiz.QuizSettingsActivity.onCreateDialog(QuizSettingsActivity.java:404)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.Activity.onCreateDialog(Activity.java:2482)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.Activity.createDialog(Activity.java:882)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.Activity.showDialog(Activity.java:2557)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.Activity.showDialog(Activity.java:2524)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at com.androidbook.triviaquiz.QuizSettingsActivity$4.onClick(QuizSettingsActivity.java:367)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.view.View.performClick(View.java:2538)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.view.View$PerformClick.run(View.java:9152)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.os.Handler.handleCallback(Handler.java:587)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.os.Handler.dispatchMessage(Handler.java:92)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.os.Looper.loop(Looper.java:123)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at android.app.ActivityThread.main(ActivityThread.java:3687)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at java.lang.reflect.Method.invokeNative(Native Method)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at java.lang.reflect.Method.invoke(Method.java:507)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
09-16 18:42:22.386: ERROR/AndroidRuntime(20074): at dalvik.system.NativeStart.main(Native Method)
09-16 18:42:22.414: ERROR/(14248): Dumpstate > /data/log/dumpstate_app_error
Поскольку я читаю это сейчас, я вижу, что проблема вкласс NumberPicker.Просто чтобы быть уверенным, что означает число, которое он ожидает здесь?