UITableView子类中的KVC导致崩溃并启用了辅助功能

Chr*_*orr 12 accessibility objective-c key-value-coding uitableview ios

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

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

如果我不覆盖+accessInstanceVariablesDirectly,一切正常.我想可能UITableView依赖于直接访问一些实例变量 - 但是如果我可以通过使用它来破坏超类,那么这个方法有什么意义呢?有没有办法指定每个属性的这种行为,比如+automaticallyNotifiesObserversForKey:?但是,只有在启用"辅助功能"时才会出现此问题,我感到困惑.

我尝试用各种仪器分析项目,但没有成功.

你可以在这里找到一个复制问题的最小项目.我非常感谢有关为什么会发生这种情况或如何实现我想要的东西的任何指示.

Chr*_*orr 2

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