如果您在自定义视图上实现UITextInput,并且 - 比如说 - 使用CoreText渲染文本,您可以绘制自己的光标和选择/标记并完全使用硬件键盘。如果您切换到日语输入,那么您会看到标记,但有一些奇怪的事情:如果您长时间按下标记,您将获得矩形系统放大镜和选择处理,而无需自己处理触摸。
我不知道为什么我们必须为选择实施我们自己的触摸处理,绘制我们自己的放大镜等。它正在用于标记!那么我还需要做些什么才能将标准手势识别器添加到我的自定义视图中呢?
开发站点上的一个示例只有关于该用户选择的注释将超出样本的范围。这表明你必须自己做。
我不认为所有开发人员在做自己的Rich Text编辑器类时都会继续做自己的选择处理代码符合Apple的利益,更不用说自定义绘制圆形和矩形放大镜了吗?!当然,您可以尝试对其进行逆向工程,使其非常接近,但如果选择机制略有不同,这可能会给用户带来奇怪的感觉。
我发现开发人员分为两组:
1)使用广泛的JavaScript代码强制UIWebView进入编辑器 2)精心实施选择机制和放大镜自己
那么这里有什么解决方案?继续提交雷达,直到Apple添加这个缺失的部分?或者这实际上已经存在(正如我遇到的前面提到的工程师所声称的那样)我们太愚蠢了,无法找到如何使用它,而是手动执行所有操作(但标记为文本)?
即便是Omnifocus的聪明人也认为手动方法是唯一有效的方法。这让我感到难过,你得到了这么好的协议,但如果你实现它,你会发现它严重残废。甚至可能是故意的?
答案 0 :(得分:0)
不幸的是,我的问题的答案是:是的。如果你想在cusrom视图上获得选择机制,你必须自己编程。
从iOS 6开始,您可以继承UITextView并自己绘制文本。根据Apple工程师的说法,这应该为您提供系统选择。