我有一个tableView
从另一个控制器以模态方式显示,在此表中用户选择一行,然后单击该行,tableView关闭,用户在UITableView的self.dismissViewControllerAnimated(true, completion: nil)
中返回到前一个控制器{ {1}}。
奇怪的是,用户点击后,didSelectRowAtIndexPath
锁定应用程序几秒钟或直到用户再次点击屏幕,然后应用程序继续运行...
我该如何解决这个问题?
对于主持人的说明:它不是UIViewController dismissViewControllerAnimated: completion: causes app to freeze的重复,有外部框架引起的麻烦!
答案 0 :(得分:1)
你的回答是,你犯了一个常见的错误。您不要拨打didSelectRowAtIndexPath
,而是didDeselectRowAtIndexPath
这意味着,您对应用的“锁定”只是didDeselect...
的预期行为:
仅当用户尝试选择其他行时存在现有选择时,才会调用此方法。代理将为先前选定的行发送此方法。您可以使用UITableViewCellSelectionStyleNone在触摸时禁用单元格高亮显示。