我有一个自定义的UITableView子类,在其中子类重写+accessInstanceVariablesDirectly以返回NO,以确保无法使用KVC设置没有 setter 的属性。

从 View 层次结构中删除此表 View 时,应用程序有时会崩溃-有时是奇怪的部分:仅当启用了辅助功能时! (即辅助功能检查器可见,或者您在物理设备上启用了辅助功能)

如果我不重写+accessInstanceVariablesDirectly,那么一切正常。我认为UITableView可能依赖直接访问某些实例变量-但是,如果我可以使用它来破坏父类(super class),那么该方法的意义何在?有没有一种方法可以按属性指定此行为,例如+automaticallyNotifiesObserversForKey:?但是,这个问题仅在启用辅助功能时才存在,对此我感到困惑。

我尝试使用各种乐器分析项目,但没有成功。

您可以找到一个最小化项目,再现问题here。我将不胜感激任何关于为什么发生这种情况或如何实现我想要的目标的指示。

最佳答案

此问题似乎已在iOS 9中修复。

关于ios - UITableView子类中的KVC导致崩溃并启用了辅助功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30632635/

10-10 13:41