手动输入未保存在Android的DatePicker(对话框)中

caw*_*caw 5 android dialog datepicker

在Android中实现DatePickerDatePickerDialog很容易.但是当谈到数据存储时,我遇到了这些类的问题:

如果您使用微调器(+或 - 按钮)来更改日期,一切正常.调用"更改日期"或"日期设置"事件,您可以获取用户输入的值.

但是当年份被手动输入到输入字段(通过键盘)并且用户然后在对话框中单击"保存"时,将不会调用任何事件,您将无法获得手动输入的值.

仅当用户在手动输入年份后再次使用滑块更改某些内容时,它才有效.因为当您使用滑块时,会触发事件.

这是正常的行为吗?如何实现所需的行为,即当用户手动输入某个内容然后单击"保存"时会触发事件?

提前致谢!

小智 9

只需清除焦点,android就会设置手动输入的数字.

例如:

DatePicker datePicker = findViewById(R.id.dp);
Run Code Online (Sandbox Code Playgroud)

保存时onClick(),添加 datePicker.clearFocus();;

这必须奏效.