VM:_UITextContainerView (CALayer) - 内存峰值
Posted
技术标签:
【中文标题】VM:_UITextContainerView (CALayer) - 内存峰值【英文标题】:VM: _UITextContainerView (CALayer) - Memory Spike 【发布时间】:2016-09-29 02:41:50 【问题描述】:我正在开发一个带有UITableViewController
的应用程序,使用UITableViewAutomaticDimension
来显示活动提要。每个单元格都有三个 UITextView。
我看到一个很大的内存峰值,这可以在仪器运行中看到。这通常会导致 App 被 ios 杀死。
什么是_UITextContainerView (CALayer)
?
如何避免这种峰值?
【问题讨论】:
您找到解决方案了吗?我正在经历同样的事情。 就我而言,我最终切换到使用更少内存的 UILabel。在表格视图的动画期间发生了内存峰值。例如,当您使用获取的结果控制器添加新记录或用户点击状态栏以返回到表格视图的顶部时。 嗯好的,谢谢。我很可能无法做到这一点,因为我需要链接文本的某些部分。不过谢谢! 看看github.com/Krelborn/KILabel 嗯,我很可能还需要滚动此文本,因为它有时会超长。不过我会看看。谢谢! 【参考方案1】:我在使用UITableViewController
和UITableViewAutomaticDimension
和UITextView
的应用程序中也遇到了这个问题,当我设置文本内容时,它会在Profiler 的内存中迅速爆炸并由于内存压力而退出。
但对我来说,这似乎是操作系统中的一个错误,因为它有一个从 UITextView
扩展的自定义类。一旦我删除了该类并直接在 UI 和代码中引用 UITextView
,然后直接在 UITextView
上进行所有格式化,内存并没有无限增长。
希望有帮助!
【讨论】:
以上是关于VM:_UITextContainerView (CALayer) - 内存峰值的主要内容,如果未能解决你的问题,请参考以下文章
UITextContainerView 仅在以大于 45° 的角度旋转时才调整为他的 UITextView 超级视图的大小
NavigationBar 半透明改变 UITextView 文字位置