gpt4 book ai didi

android - DatePickerDialog软键盘类型无效

转载 作者:太空狗 更新时间:2023-10-29 14:27:34 26 4
gpt4 key购买 nike

我正在我的应用程序中实现 DatePickerDialog,我的问题是当我尝试更改“日”时,软键盘会弹出并显示数字,而插入符号位于数字之前。当我单击数字时,它不会替换“日”框中已有的内容。仅当我转到 Day 框中数字的末尾并将其删除(软键盘中的退格键)然后输入数字时,它才有效。

为什么会这样?为什么它不覆盖已经存在的内容?

此代码显示对话框:

protected Dialog onCreateDialog(int id)
{
Dialog ReturnDialog = null;

switch (id)
{
case DATE_DIALOG_ID:
ReturnDialog = new DatePickerDialog(this, mDateSetListener, Year, Month - 1, Day );
break;
}
return ReturnDialog;
}

然后我从 onClickListener() 调用它

showDialog( DATE_DIALOG_ID );

我做错了什么?

最佳答案

您看到的是(我认为)正常行为。 DatePickerDialog 由单个 DatePicker 小部件组成,该小部件由每个日期部分(日、月、年)的三个 NumberPicker 小部件组成。这些 NumberPickerImageViews 和作为输入区域的 EditText 组成。单击 EditText 以显示用于输入数据/文本的键盘不会删除旧数据,因此行为正常。

你将很难覆盖此行为,特别是如果你计划覆盖旧的 android 版本,因为你将无法访问输入 EditTexts。例如,您无法在旧版 Android 上访问对话框的 DatePicker 小部件,访问此小部件的方法最近才添加到 DatePickerDialog(在 Honeycomb,API 版本 11)。

当然,您可以选择重新创建 DatePickerDialog 来实现该行为,但我认为这不值得付出努力。

关于android - DatePickerDialog软键盘类型无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10564142/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com