我有一个具有表视图的Swift应用程序,其中每个单元格内部是另一个子列表,我们将其保存在第二个表视图中。
每个表格视图单元格由标题区域,带子项目的另一个表格视图和页脚区域组成。
出于某种原因,当您单击内部表视图正下方(在图像中突出显示)时,它会触发NSInvalidArgumentException,并显示以下错误和一个不太有帮助的长堆栈跟踪(如果有人认为它,我可以提供它会有所帮助。)
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UITableViewCellAccessibilityElement superview]: unrecognized selector sent to instance 0x7cd5f480'
我设置了一个异常断点,但调试器在类初始化时指向AppDelegate,并没有提供错误发生位置的详细信息。
我已经试验了我设置内部表视图的委托和数据源的代码,当我这样做时,错误停止发生,所以我认为这表明内部表视图出了问题。
相关自定义单元格的源代码位于here
我认为这个问题与可访问性有关,但老实说我不知道那是什么,并且无法从我的谷歌搜索中找到相关的错误。谢谢你的帮助!
答案 0 :(得分:1)
首先,
您不应该在另一个表视图中有一个表视图。正如您所发现的那样,这可能会导致问题。我建议您调整代码以动态插入单元格并具有多个单元格类型。
至于您的辅助功能错误,我会尝试在Identity Inspector下的故事板上切换辅助功能复选框。
如果您有任何其他问题,请告诉我。