objective-c - UIWebView 段落选择样式

标签 objective-c ios uiwebview textselection

pic1

正如您在第一张图片中看到的那样,我在我的应用程序中使用 UIWebview。
但是当我将第二个 handle 拖到下一个段落时,选择变成了一个矩形框,我只能选择整个段落,我怎样才能像第一张图片一样保持它?

pic2

最佳答案

从阅读 Using Copy, Cut and Paste Operations ,可以看到iOS已经实现了UIWebView的UI选择, UITextViewUITextField对您来说,因此您所看到的只是选择在这些 UI 对象中的工作方式。

(因此:只要用户在段落的范围内,那么用户将能够选择段落中的一部分文本,正如您在第一个 View 中所展示的那样;并且如果用户的手指在移动在段落边缘之外,显示所选区域的底层 UI 代码将尝试选择它可以选择的最小项目子集,整个段落在此级别被视为一个原子单元。)

鉴于上面引用的文档仅描述了如何调用各种 剪切/复制/粘贴/选择从菜单调用时的操作(对 UIMenuController 的菜单中显示的内容进行一些控制,并对 UIPasteboard 中的剪切/复制选择进行一些控制),似乎没有一种指导 UI 如何响应控制选择边缘的用户的便捷方式。甚至延伸到 UIWebView可能使您能够捕获必要的触摸事件,但您将无法通过 UIWebView 的文档化 API 来指导生成的选择绘图。 .

因此,如果不使用非公共(public) API,很难想象如何对选择跨越段落的文本进行更精确的细粒度控制,除非您竭尽全力实现自己的类来捕获触摸事件有必要控制他的选择,然后处理事件以围绕您喜欢的边缘绘制选择。换句话说,你不得不重新发明 UIWebView以及它所做的一切,除了用于跨文本段落的选择的特殊代码。

对不起。

关于objective-c - UIWebView 段落选择样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9834184/

相关文章:

objective-c - 如何使用 OCMock for iOS 模拟私有(private)属性?

iphone - iOS 警告 : Implicit declaration of function 'pathInDocumentDirectory'

iOS UIView继承性能差

ios - UITextField 触摸事件在 UIScrollView 中不起作用

ios - iOS 是否支持 PDF/A?

iphone - 从 native iPhone 应用程序访问 UIWebView 本地存储数据

ios - UIDeviceOrientation 通知

ios - SDK 更新到 3.14 后原生 Facebook 登录停止工作

ios - Swift: 'NSLayoutFormatOptions' 没有名为 'Element' 的成员

iphone - 使用 uiwebview 访问网页的 iOS 按钮