【发布时间】:2015-07-09 09:19:19
【问题描述】:
我有一些用于富文本编辑的 UIWebView。他们有一个内容可编辑的 div。问题是,在字段之间切换时,如果用户点击 UIWebView,键盘会在瞬间消失。
从 UIWebView 到原生 UITextView,键盘仍然显示。
即使在点击 not contentEditable 的 UIWebView 时,键盘也会被关闭。在这种情况下,我可以将 userInteractionEnabled 转换为 false,但如果我希望它可以滚动,那仍然行不通。
这是一个演示问题的 gif:
这背后没有什么特别的代码,除了将以下 HTML 加载到 UIWebViews 中(contentEditable 被第二个删除)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta name="viewport" content="user-scalable=no">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div id="editor" contentEditable="true"></div>
</body>
</html>
【问题讨论】:
-
这是 iOS 的本质。那么,问题出在哪里
-
问题在于,当您在原生元素(即 UITextView 到 UITextView 或 UITextField)之间切换时,键盘不会被解除,但在这种情况下会被解除。因此,当进入 UIWebView 时,它违背了 iOS 的本质(从用户的角度来看)。
标签: ios objective-c iphone swift uiwebview