【问题标题】:How to disable long press on keys in custom keyboard android?如何禁用自定义键盘android中的长按键?
【发布时间】:2018-06-01 12:33:11
【问题描述】:

我想禁用长按自定义键盘上的键。为了实现自定义键盘,我扩展了 View 类。如下所示,但没有处理长按的方法

 public class CustomKeyboard extends View {
     @Override
            public void onPress(int arg0) {
                Log.d("Gajanand", "onPress:GK ");

            }

            @Override
            public void onRelease(int primaryCode) {
                Log.d("Gajanand", "onRelease: GK");
            }

            @Override
            public void onText(CharSequence text) {
            }

            @Override
            public void swipeDown() {
            }

            @Override
            public void swipeLeft() {
            }

            @Override
            public void swipeRight() {
            }

            @Override
            public void swipeUp() {
            }
}

帮我处理长按。我想完全禁用长按。

【问题讨论】:

  • 点击后可以禁用按钮,直到没有按下另一个按钮
  • @jakirhussain 是的,但这里没有按钮都是键自定义键无法处理长按
  • 就这样做 @Override public void onRelease(int primaryCode) { myPopupWindow.dismiss(); }

标签: android android-softkeyboard custom-keyboard


【解决方案1】:

您可以使用PopupWindow 类并使用自定义布局填充它。

PopupWindow popup = new PopupWindow(context);
popup.setContentView(custom);

点击弹出窗口后,您可以将其关闭。

 @Override
 public void onRelease(int primaryCode) {
 Log.d("Gajanand", "onRelease: GK");
 popup.dismiss();
 }

编码愉快!!

【讨论】:

  • 当用户长按时,它会被上面的代码禁用。无论您的键盘是否打开。试试这个。我已经实现了自定义键盘。
  • 是否可以在按下某个键时完全禁用键盘并在释放时启用?
猜你喜欢
  • 2015-06-06
  • 1970-01-01
  • 2012-10-03
  • 1970-01-01
  • 2020-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-20
相关资源
最近更新 更多