4

我有一个使用 PhoneGap 1.6 和 Sencha Touch 1.1.1 的 Android 应用程序。一个视图有一个文本输入字段,它在 Android 中的行为很奇怪:它会自我复制并且很难移除焦点。

我已经确定它是一个出现在“真实”输入字段之上的 WebTextView。我遇到的问题是用屏幕点击模糊文本字段非常困难,如果滚动父容器,WebTextView 不会随之滚动,因此您可以同时看到两者。

消除对元素的关注的唯一方法是在屏幕的各个部分猛烈点击,就像触发 Mavis Beacon 的挫败检测器一样。

我的实际问题是:我怎样才能完全关闭这个功能,或者至少解决它?期望用户除了在框外单击或按下设备上的后退按钮以停止在文本字段中输入之外的任何操作是不合理的。实际上,按 Back 只会收起软键盘并且不会放弃焦点。

4

1 回答 1

1

这些是浏览器错误,由一些 CSS 标志触发。

解释错误:设备从网站内容创建某种“屏幕截图”。所有转换和过渡都是在实际页面的“屏幕截图”之上进行的。

如果您有输入元素,则会在“屏幕截图”之上呈现某种代理元素。有时这些代理元素在错误的位置。

如果您触发网站进行硬件加速,就会发生这种情况。您必须删除一些 CSS 定义:

transform(), translate(), transform3d(), translate3d().

坏消息是: 你无法解决这个问题,因为它是浏览器中的一个错误。

我有一些不同的安卓设备,都有不同的问题,一个修复会破坏另一个设备。

我认为这个 bug 永远无法解决,因为自从 android 4.1 和 chrome 以来,没有人关心嵌入式浏览器。

如果您可以禁用硬件加速,这可能会有所帮助。

好消息是: 有关于嵌入式 chrome-webview 的传言。

我开始写一些关于“新 IE”的博文:http: //christian-kuetbach.de/blog/post/14

于 2012-11-09T21:45:57.363 回答