我的应用在iOS7上运行良好,但在iOS8上崩溃。
我看到了许多关于这个问题的问题,但从未找到一个好的解决方案。
我有一个正在使用UITableViewController的应用程序,并且UITableViewController具有名为m_searchDisplayController的SearchDisplayController实例。
当我首次点击搜索栏搜索内容时,表视图会显示结果,然后搜索栏会resignFirstResponder。 但是当我再次点击搜索栏时,应用程序会崩溃:
-[MyFavoritesViewController _searchController]: unrecognized selector sent to instance
这是一个栈结构:
然后我尝试将 _searchController 方法添加到 MyFavoritesViewController 类中,就像这样:
- (UISearchDisplayController *)_searchController
{
return nil;
}
应用程序正常运行,除了搜索栏的文本框无法输入。因此,我尝试了以下方法:
- (UISearchDisplayController *)_searchController
{
return m_searchDisplayController;
}
并且另一个崩溃信息显示如下:
-[UISearchDisplayController _searchBarShouldFinalizeBecomingFirstResponder]: unrecognized selector sent to instance
我不知道如何定位错误代码,有没有人对此有解决办法?先谢谢了。
我的情况:
我对UISearchBar进行了一些修改,并将searchBar的textField的代理更改为某个对象。原来,系统的“_searchController”方法会调用searchBar的textField的代理,但现在它会调用我的对象,然后崩溃。希望这能帮到你。