仅当软键盘输入数字时,是否可以为 numberPicker 设置 onChangeListener?当数字更改 gy +/- 时,不应执行 Listener。仅当用户从软键盘输入数字时。
目标是在用户在前一项中输入数字后,下一个选择项应该获得焦点。所以用户准备好输入一个像“12345”这样的数字,每个pickeritem都有自己的值:
Picker0=1
Picker1=2
Picker3=3
Picker4=4
Picker5=5
这是可能的还是错误的方式?
仅当软键盘输入数字时,是否可以为 numberPicker 设置 onChangeListener?当数字更改 gy +/- 时,不应执行 Listener。仅当用户从软键盘输入数字时。
目标是在用户在前一项中输入数字后,下一个选择项应该获得焦点。所以用户准备好输入一个像“12345”这样的数字,每个pickeritem都有自己的值:
Picker0=1
Picker1=2
Picker3=3
Picker4=4
Picker5=5
这是可能的还是错误的方式?
就我个人而言,我不喜欢在我可能犯错误时自行移动的焦点——例如,如果我按下 4 而不是 5,它会将我带到下一个选择器,我会很生气。您可能会考虑在用户按下回车键时更改焦点...不过,无论哪种方式,您都希望在您的活动或对话框中设置一个 onKeyUp 事件,寻找代表焦点更改的键码(即回车键或号码)
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER)
//blah
return true;
}
else if (keyCode == KeyEvent.KEYCODE_1) // sadly you'll have to put in a
//blah // comparison for each number here
return false; // Return false b/c you want the picker to receive number input
}
return false;
}