gia*_*mpo 5 iphone cancel-button uisearchbar uisearchdisplaycontroller
我通常使用[self.tableView setContentOffset:CGPointMake(0,40)];以隐藏在navigationBar下面的UISearchBar(我将其设置为tableView的标题).在viewDidLoad中一切正常:加载视图时,searchBar位于navigationBar下方.然后我把相同的代码行
[self.tableView setContentOffset:CGPointMake(0,40)]
Run Code Online (Sandbox Code Playgroud)
在
- (void)searchDisplayControllerWillEndSearch:(UISearchDisplayController *)controller
Run Code Online (Sandbox Code Playgroud)
但它可以做任何事情:单击取消按钮时,searchBar仍然可见.怎么了?
下面的方法是从主线程调用的吗?
- (void)searchDisplayControllerWillEndSearch:(UISearchDisplayController *)controller
Run Code Online (Sandbox Code Playgroud)
你可以这样检查:
if ([NSThread isMainThread]) {
NSLog(@"Yes it is the main thread.");
}
Run Code Online (Sandbox Code Playgroud)
否则,任何视图更改都不会在屏幕上注册。如果您必须从单独的线程修改视图,您可以使用以下命令:
[self performSelectorOnMainThread:@selector(XXX) withObject:nil waitUntilDone:NO];
Run Code Online (Sandbox Code Playgroud)
我不确定这是否是你的问题,但这是我要开始寻找的地方。
| 归档时间: |
|
| 查看次数: |
4838 次 |
| 最近记录: |