jjzjj

OnKeydown

全部标签

android - Android提供的onKey()、OnKeyDown()和dispatchKeyEvent()方法的区别?

Android提供的onKey()、OnKeyDown()和dispatchKeyEvent()方法有什么区别?我想知道何时何地可以使用这些。请对此有所了解。 最佳答案 追踪5.1SourcefortheViewClass的源代码.似乎dispatchKeyEvent()是系统调用的第一个方法。重载它将阻止调用任何和所有关键事件,除非调用基本版本。dispatchKeyEvent()的第一步是尝试将事件传递给onKeyListener如果有的话。这是调用onKey()的时候。如果onKey()实现返回true,dispatchKey

android - Android提供的onKey()、OnKeyDown()和dispatchKeyEvent()方法的区别?

Android提供的onKey()、OnKeyDown()和dispatchKeyEvent()方法有什么区别?我想知道何时何地可以使用这些。请对此有所了解。 最佳答案 追踪5.1SourcefortheViewClass的源代码.似乎dispatchKeyEvent()是系统调用的第一个方法。重载它将阻止调用任何和所有关键事件,除非调用基本版本。dispatchKeyEvent()的第一步是尝试将事件传递给onKeyListener如果有的话。这是调用onKey()的时候。如果onKey()实现返回true,dispatchKey

Android:后退按钮绕过 onKeyDown 并关闭应用程序

我有一个包含4个不同选项卡的程序。其中一个选项卡是一个ActivityGroup,其中有一个ListView。当我单击其中一个列表项时,它会切换到WebActivity:lv.setOnItemClickListener(newOnItemClickListener(){publicvoidonItemClick(AdapterViewparent,Viewview,intposition,longid){Intentintent=newIntent(TabActivity2.this,WebActivity.class);Bundleb=newBundle();b.putString

android - 使用软键盘时不会调用 onKeyDown

我的Activity的xml代码是要为此添加关键事件,我在主要Activity中编写了这样的代码publicclassMainActivityextendsActivity{EditTexte1;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);e1=(EditText)findViewById(R.id.et1);/*e1.setOnKeyListener(newOnKeyL

Android:子类库不会通过 onKeyDown 事件滚动

我有一个子类Gallery小部件,我自定义了它的onFling方法,否则一切都应该与原始Gallery小部件相同。我正在尝试使用以下方式为其向左或向右滚动设置动画:gallery.onKeyDown(KeyEvent.KEYCODE_DPAD_LEFT,newKeyEvent(0,0));但这似乎不适用于子类Gallery。知道为什么吗? 最佳答案 如果你们有这个问题,请尝试去掉画廊间距值——这对我来说已经解决了。 关于Android:子类库不会通过onKeyDown事件滚动,我们在St

javascript - Android 下的 Firefox/Chrome 在键入字母时不会触发 OnKeyPress、onKeyDown、onKeyUp 事件

我在Android下使用Firefox/Chrome时遇到问题。当我在输入框中键入文本时(参见下面的代码),在键入字母时不会触发onkeypress、onkeyup和onkeydown事件,但在键入“%”符号或按下空格键时会触发。在Android“预装”浏览器中一切正常。另一个非常罕见的事情,如果我的光标不是最后一个字符,行为是不同的...如果我的光标在文本的中间,在Firefox下,所有事件都会为任何键触发。在Chrome事件中,按下一个键会触发两次onkeyup和onkeydown,但不会触发onkeypress。我在不同的设备上测试过它,有类似的问题。我找不到在Internet上

android - 多个 Activity ,相同的 onCreateOptionsMenu、onOptionsItemSelected 和 onKeyDown。我能以某种方式重用代码吗?

多个Activity具有相同的onCreateOptionsMenu、onOptionsItemSelected和onKeyDown。当我实现更改时,我必须在每项Activity(工作时间*Activity计数)中都这样做。有没有一种方法可以重用代码(例如,将所有三种方法写在一个地方,并在每个Activity中都引用它)? 最佳答案 当然,只需创建您自己的Activity类,您的所有类都继承自该类。有点像这样——创建一个继承自Activity并实现通用行为的抽象基类:publicabstractclassMyBaseActivity

javascript - 输入事件监听器(onkeypress、onkeydown)在 Android 数字键盘中不起作用

我不知道为什么,但在花了几个小时处理这个问题后,我可以说出了点问题。我有一个简单的输入我希望它接受仅数字(数字[0-9]),仅此而已。为了实现这一点,我添加了一个事件监听器,我可以在其中控制事件的键码。没有什么特别的,几乎所有平台上的一切都可以工作,问题来自Android。这里的type="number"使数字键盘出现-这很好-还有一些其他字符(逗号、点、连字符...)。当您按下其中一个特殊字符时,行为很奇怪:onkeypress事件:绝对不触发(为什么???)onkeydown事件:事件正在触发并调用相关函数。问题是浏览器已经输入字符(为什么??)所以不可能调用“事件”的“preve

android - onKeyDown 并不总是在 Android 应用程序中调用

我基于月球着陆器示例创建了一个简单的安卓游戏,但我在处理关键事件时遇到了问题。当Activity开始时,唯一需要调用onKeyDown或onKeyUp的键是方向键上/下/左/右键。menu、back或dpad_center键都不会触发onKey方法。但是,一旦我按下了dpad上/下/左/右按钮之一,按下菜单、后退或dpad_center键就会触发这些方法。我没有收到任何错误,也没有出现问题的任何迹象。焦点可能设置错误-Activity是从屏幕上的按钮启动的,因此它可能处于触摸屏模式。如果是这样的话,触摸后退按钮不应该让我进入正确的焦点模式以便我可以catch事件吗?我正在使用来自SDK

android - onKeyDown 和 onKeyLongPress

我希望我的应用程序对音量按钮的正常按键事件和长按按键事件做出不同的react。我已经看过this,但如果我按住音量按钮,我会在收到KeyLongPressed事件之前收到很多KeyDown事件。我想要一个事件或另一个事件,而不是两个事件,这样我就可以通过短按调整音量并通过长按跳过轨道。你能帮帮我吗?这是我的代码:@OverridepublicbooleanonKeyLongPress(intkeyCode,KeyEventevent){if(keyCode==KeyEvent.KEYCODE_VOLUME_DOWN){Log.d("Test","Longpress!");returnt