我正在使用Cordova 2.9和jQM 1.1.0开发Android混合应用程序。
在一个地方,用户可以在Textarea中添加备注,并且以下Android版本的速度很快:
GB 2.3.x
JB 4.1
Nexus4 4.2, 4.3
Nexus7 4.3
Intel Emulator w/4.3
在ICS,4.0.3上,在三星GS3和亚马逊Kindle HD 8.9“(和英特尔模拟器w / 4.0.3)上, 打字响应很慢。在我完成时,我输入“测试”这个词 点击这个词,它会在整个单词显示之前再过2秒。
当我在ICS上使用默认Android浏览器或Android Chrome打开HTML时 键盘速度很好。
input[type=text]/input[type=number]
的行为方式相同。
我发现有帮助:
- reboot device
- disable Android spellcheck (Settings-Language/Keyboard-KeyboardSettings-spellcheck)
- CSS to fix double-input issue, and disable keyboard spellcheck and word prediction
textarea {
-webkit-user-modify: read-write-plaintext-only;
}
尝试转换为可编辑的div,这似乎没有帮助。
我的下一步是检测科尔多瓦图书馆,试图在那里找到瓶颈, 但我希望在投入时间之前找到一个不同的解决方案。
答案 0 :(得分:1)
我找到了解决ICS Webview上输入速度很慢的问题。
我已经禁用了一些昂贵的CSS功能,比如box-shadow,text-shadow,border-radius和所有帮助。
改变打字速度的重大变化是删除所有背景图像:渐变css规则。
在Phonegap google小组上找到Kerri Shotts对此的引用 https://groups.google.com/forum/#!searchin/phonegap/slow/phonegap/JNTlZpSZod8/nLvsH2noum4J
由于CPU将要进行所有的合成,你需要尽可能减轻负载:透明度在这里将是一个巨大的问题 - 即摆脱它。可怕的是,我知道,但是如果CPU必须将任何内容混合在一起,它会花时间去做,结果是一个缓慢的应用程序。摆脱框阴影,文本阴影,漂亮的CSS渐变等。如果你必须拥有那些,那么在我们有透明的PNG之前构建那些像我们习惯的那样 - 图像切片(呃)。令人作呕,是的,除非你愿意处理这个较慢的应用程序,否则这是我唯一知道的事情。此外,尽可能减少图像大小,不需要图像缩放,并尽可能减少HTML元素。