webview - iOS 7 web View 文本字段焦点在键盘出现时发生变化

标签 webview keyboard ios7

更新-解决方案

@jfurr 在这个 post 中的回答解决问题。

改变这个

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0" />

进入

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi" />

更新 - 解决方法

但如果我将 4 英寸 iOS 7 设备的 Web View 高度降低至少 37 点(36 点或更小的点不起作用),焦点将保留在上方的文本字段中。

CGRect aCGRect = [webView frame];
aCGRect.size.height = [[UIScreen mainScreen] applicationFrame].size.height - 37;    
[webView setFrame:aCGRect];

不知道为什么会这样。

问题

有一个全屏 Web View ,其中两个文本字段(不是 iOS 原生文本字段)在 Web View 中间垂直对齐。当我点击上方的文本字段时,应该会看到键盘出现,焦点会落在上方的文本字段上,同时 Web View 会适本地向上移动一点。

现在意想不到的结果是,当触摸上方的文本字段时,键盘可以显示,但焦点落在下方的文本字段上,光标也移动到下方的文本字段。然而,这种意想不到的结果只发生在 iOS 7 中。它在 iOS 6 和 5 中按预期工作。

最佳答案

(与帖子中列出的更新 - 解决方案相同。)

@jfurr 在这篇文章中的回答解决了这个问题:

ios7 issues with webview focus when using keyboard html

改变这个

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0" />

进入

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi" />

关于webview - iOS 7 web View 文本字段焦点在键盘出现时发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19920578/

相关文章:

ios7 - 低功耗蓝牙 (IOS) - 后台广告和自定义广告数据

Android WebView - 滚动条不填充 layout_height

Android WebView -> 显示 WebArchive

macos - 操作系统 : Remap caps lock key to funktion key or Fn?

ios - 通过快速返回键关闭键盘

ios - 使用 AFNetworking 2.0 + NSProgress + Custom ProgressView 获取下载进度

javascript - 在 webview 中加载 Javascript 和 HTML

android - 从 Assets 文件夹加载本地 html 文件时出现问题

android - Android模拟器上物理键盘输入错误字符

ios7 - Xcode 5 中的 IB(Interface Builder)中的撤消功能不起作用