2010-12-20 8 views
2

私のアクティビティにDatePickerがあります。ユーザーがキーパッドを使用して日付を入力し、+または - ボタンを使用して日付を変更しない限り、正常に動作します。 ユーザがキーボードで編集したときに返される日付は、常にDatePickerが初期化される日付です。 デバッグ時に、ボタンを使用して日付が変更された場合を除いて、onDateChanged()コールバックは呼び出されません。DatePickerがAndroidのキーボードからのユーザー入力に応答していません

答えて

8

うん、私もこの問題を抱えています。アクティブな編集テキストからフォーカスを削除した場合にのみ、datepickerは変更を保存します。したがって、 "mDatePicker.clearFocus();"を実行する必要があります。それから日付を取得する前に。このソリューションでは

+0

ありがとうございました。その部分を代わりに日付選択ダイアログで置き換えることにしました。私はあなたが提案したソリューションをチェックし、それはとても感謝します。 – vlator

+1

@vlator回答を受け入れることを忘れないでください、この解決策は私のために働いた:D – schwiz

6

ルック... "clearFocus" 日付ピッカーは完全にユーザーの変更を保存しませんを使用して

DatePicker dp = (DatePicker) findViewById(R.id.datePicker1); 
dp.clearChildFocus(getCurrentFocus()); 
int day = dp.getDayOfMonth(); 
int month = dp.getMonth(); 
int year = dp.getYear(); 

...。