Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在UITableViewCell中重用UITextView_Ios_Swift_Uitableview_Uitextview_Textkit - Fatal编程技术网

Ios 在UITableViewCell中重用UITextView

Ios 在UITableViewCell中重用UITextView,ios,swift,uitableview,uitextview,textkit,Ios,Swift,Uitableview,Uitextview,Textkit,我正在使用UITextView在uitablview单元格中显示一些复杂的内容(如不同颜色的文本、图像、链接等) 首先将内容解析为NSTextStorage实例。然后使用文本存储配置相应的NSLayoutmanager和NSTextContianer 最后,一个TextView实例由文本容器组成 let textView = UITextViewFixed(frame: frame, textContainer: container) 问题是,文本视图不允许切换文本容器。因此,文本视图需要从超

我正在使用
UITextView
uitablview单元格中显示一些复杂的内容(如不同颜色的文本、图像、链接等)

首先将内容解析为
NSTextStorage
实例。然后使用文本存储配置相应的
NSLayoutmanager
NSTextContianer

最后,一个
TextView
实例由文本容器组成

let textView = UITextViewFixed(frame: frame, textContainer: container)
问题是,文本视图不允许切换文本容器。因此,文本视图需要从超级视图中删除,使用新的文本容器重新分配,并在每次重用父单元格时添加回单元格。这会使滚动不太平滑

已在文本容器中尝试了
replaceLayoutManager
,但不起作用


我想知道在我的例子中是否有重用文本视图的方法?

事实证明,文本视图不能以我使用它的方式重用

作为一种解决方法,每次内容更改时,我都放弃从文本容器创建UITextView。文本视图现在是使用单元格创建的,与所有其他子视图一样。更改
attributedText
应该足够我现在使用了