用户组 
易积分722
热心0
好评1
|
本帖最后由 suiyuan 于 2022-5-19 18:51 编辑
- public boolean onKeyDown(int keyCode, KeyEvent event) {
- if (activeForm == null) {
- return false;
- } else {
- BooleanReferenceParameter shield = new BooleanReferenceParameter(false);
- activeForm.按下某键(keyCode, shield);
- if (!shield.get()) {
- BooleanReferenceParameter 是否允许长按;
- if (event.getRepeatCount() == 0 && !this.lockLongPressKey) {
- this.pressCount = 0;
- 是否允许长按 = new BooleanReferenceParameter(false);
- Log.Info(keyCode + "键代码:被按下", event.getRepeatCount() + "");
- activeForm.onKeyDown(keyCode, 是否允许长按);
- if (是否允许长按.get()) {
- event.startTracking();
- return true;
- }
- } else if (this.lockLongPressKey) {
- this.pressCount = event.getRepeatCount();
- 是否允许长按 = new BooleanReferenceParameter(false);
- Log.Info(keyCode + "键代码:被长按", event.getRepeatCount() + "");
- activeForm.onKeyLongPress(keyCode, this.pressCount, 是否允许长按);
- if (是否允许长按.get()) {
- return false;
- }
- }
- }
- this.pressCount = 0;
- return shield.get();
- }
- }
- public boolean onKeyLongPress(int keyCode, KeyEvent event) {
- Log.Info(keyCode + "键代码:被长按", event.getRepeatCount() + "");
- this.pressCount = event.getRepeatCount();
- if (activeForm != null) {
- BooleanReferenceParameter 是否允许长按 = new BooleanReferenceParameter(false);
- activeForm.onKeyLongPress(keyCode, this.pressCount, 是否允许长按);
- }
- this.lockLongPressKey = true;
- return super.onKeyLongPress(keyCode, event);
- }
- public boolean onKeyUp(int keyCode, KeyEvent event) {
- Log.Info(keyCode + "键代码:被放开", event.getRepeatCount() + "");
- try {
- if (activeForm != null) {
- activeForm.某键被放开(keyCode);
- activeForm.onKeyUp(keyCode, this.pressCount);
- }
- if (this.lockLongPressKey) {
- this.lockLongPressKey = false;
- return true;
- }
- } catch (Throwable var4) {
- var4.printStackTrace();
- }
- return true;
- }
复制代码
|
|