嗨,大家好.
我在iOS 7中使用新的uisearchbar时遇到了一些麻烦
在我的应用程序中,在tableHeaderView中有一个带有搜索栏的tableview它是手工制作的(以编程方式添加) - 在storyboard中的tableviewcontroller,在方法viewDidLoad中我添加了searchDisplayController,我的自定义搜索栏继承自UISearchBar.
所有事情都在导航控制器中.
我的应用程序的逻辑在某些方面我发布这个导航控制器发送dismissViewController
在ios 6中它完美无缺.
但在ios 7中,我在尝试发布导航控制器时遇到了崩溃.
在日志我有趣的线...
到viewDidLoad的末尾我添加这个:
for (UIView *view in self.view.subviews) {
NSLog(@"%@ %p", [view.class description], view);
}
Run Code Online (Sandbox Code Playgroud)
在ios 6我只有这个
2013-09-19 12:40:40.553 myApp[4182:c07] KRSearchBar 0x988bdd0
Run Code Online (Sandbox Code Playgroud)
在ios 7中:
2013-09-19 13:08:47.808 myApp[4690:a0b] UIView 0xa265310
2013-09-19 13:08:47.809 myApp[4690:a0b] UITableViewWrapperView 0xa25b4d0
2013-09-19 13:08:47.810 myApp[4690:a0b] KRSearchBar 0xa2591b0
Run Code Online (Sandbox Code Playgroud)
并且在释放导航控制器之后我有
2013-09-19 13:09:32.419 myApp[4690:a0b] *** -[UIView release]: message sent to deallocated instance 0xa265310
Run Code Online (Sandbox Code Playgroud)
所以...谁知道UIView是什么?它来自何处以及如何处理它?