我经常在LogCat中看到此调试消息。例如,在滑动或旋转设备时。然后,仿真器不对事件做出反应。这是什么意思?

需要在仿真器上但在某些版本上测试旋转,当我按CTRL F12或CTRL F11时,什么都没有发生(嗯,设备作为一个整体旋转,但不旋转屏幕),并且在日志中看到此消息。我也找不到任何与谷歌...

好的,这是特定于PhoneGap的。我在PhoneGap的源代码中找到了一些东西:

 /**
  * We are providing this class to detect when the soft keyboard is shown
  * and hidden in the web view.
  */
 class LinearLayoutSoftKeyboardDetect extends LinearLayout {

        private static final String TAG = "SoftKeyboardDetect";


但是我没有使用软键盘做任何事情,只是旋转设备。也许是个错误?

最佳答案

我可以为您提供此日志的背景。 Android中存在一个错误,或者他们可能会称其为缺乏功能,但显示或消失键盘时不会引发任何事件。由于键盘缩短了屏幕尺寸,因此给Web应用程序带来了问题。当屏幕尺寸变小时,您的用户界面会受到影响。

为了能够在Android的PhoneGap中对键盘显示/隐藏做出反应,我们实现了LinearLayoutSoftKeyboardDetect,它基本上是LinearLayout,但是它对屏幕尺寸的变化做出反应。如果旋转设备,则宽度变为高度,我们可以忽略该更改,但是如果高度显着变小而宽度保持不变,则可以安全地假定正在显示键盘,并且抛出了show keyboard事件。当高度显着变大而宽度保持不变时,我们将引发隐藏键盘事件。合理?

关于android - Android SoftKeyboardDetect:忽略此事件是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9333689/

10-12 12:34
查看更多