如果我将文本输入放在页面的下半部分,当用户点击它以显示虚拟键盘时,页面会自动向上滑动。当您点击键盘时,页面会自动再次向下滑动。即,一切都很好。
但是当文本输入位于页面的 top 一半时(在这种情况下,当键盘出现时页面不会自动滑动),行为很糟糕:
用户点击文字输入;
整个屏幕(文字输入除外)暂时变黑,然后键盘向上滑动;
用户点击键盘;
在再次渲染页面之前,屏幕会闪烁黑色。
但是,如果您尝试上述步骤 second 时间,则序列为: 1.同上;
与上述相同;
与上述相同;
屏幕变黑并保持黑色;
用户点击黑屏;
页面再次显示。
我尝试了一些不同的东西,例如检测文本输入何时失去焦点(即键盘隐藏)以显示页面,滚动页面等等,但似乎没有任何东西可以防止黑屏出现此问题。 / p>
当文本输入失去焦点时显示javascript警告可以避免出现黑屏问题(但我不希望显示警报!)。
我也尝试在AndroidManifest.xml标签中使用android:hardwareAccelerated =“true”。虽然这确实解决了这个特殊问题,但不幸的是,它在整个Web应用程序中产生了更多的渲染问题。
有人有任何建议吗?
答案 0 :(得分:0)
将此代码放入启动活动代码
中的清单文件中android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:windowSoftInputMode="stateHidden|adjustPan"