首页 > 解决方案 > 分页模式下UIScrollView内部的多个UITextView交互问题

问题描述

我在基于 textContainer 的分页模式下在 UIScrollView 中创建多个 UITextView。 查看结构

一切都按预期工作,但我想让 textView 可选择。所以我当然是 [textView setSelectable:YES];在添加 scrollview 时做到的。ScrollView canCancelContentTouchesdelaysContentTouches 设置为 NO 并且底层 textView 接收触摸,正如我通过覆盖看到的那样(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event。但是 textView 仍然无法选择,当我在 textViews 中记录变量时,它显示isSelectableisEditable设置为 NO,无论我在添加为 scrollView 的子视图时是否将它们设为 YES。textView 的边界也不大于包含 scrollView 。如果我将 UIButton 添加为 textView 的子视图,它也会收到 touches 。如果只添加一个 textView,则选择和编辑工作正常。有谁知道可能出了什么问题以及为什么触摸正在传递但文本事件没有触发?还是预期的行为?

标签: iosuiscrollviewuikituitextviewtextkit

解决方案


似乎,当多个 UITextViews 有一个 textStorage 时,即使每个都有自己的容器,它也会变成静态的,你对此无能为力。参考iOS 7 Programming Pushing the Limits类似的问题和答案: https ://stackoverflow.com/a/41842189/12701117

出于索引原因,我将留下问题和答案。


推荐阅读