4

UISearchBar 动画有问题。

状态栏打开时动画有问题。否则没关系。我以编程方式创建了表格视图和搜索栏。uisearchbar 位于 tableview 的 headerview 中。保持这种状态很重要。当您使用情节提要时,我知道它可以正常工作。

我创建了一个非常基本的示例项目,因为我认为这是向您展示问题的最简单方法。我花了几个小时来找到解决方案,但我就是想不通。任何帮助将不胜感激。

这是示例项目的链接:SearchBarProject

4

3 回答 3

2

我找到

self.navigationController.navigationBar.translucent = YES;

让我的动画少了错误

于 2014-03-28T15:30:53.513 回答
1

我认为这是 IOS 7 错误。Apple 提供了一个uitableview 搜索示例应用程序。完成编辑搜索栏时也有同样的问题。IOS 6没有任何问题

于 2013-10-10T11:23:50.383 回答
-1

只需向 UISearchBar 添加一个子层并更改视图的背景颜色即可使动画几乎完美

- (void) searchDisplayControllerWillEndSearch:(UISearchDisplayController *)controller {
    self.view.backgroundColor = RGB(199,199,204);

    self.fixSearchAnimation = [[UIView alloc] initWithFrame:CGRectMake(0, -20,320, 40)];
    self.fixSearchAnimation.backgroundColor = RGB(199,199,204);
    [self.searchController.searchBar addSubview:self.fixSearchAnimation];
    [self.searchController.searchBar sendSubviewToBack:self.fixSearchAnimation];
}
- (void) searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller {
    self.view.backgroundColor = [UIColor whiteColor];
    [self.fixSearchAnimation removeFromSuperview];
}

在慢速模式下,您仍然可以在搜索栏原始子视图和新视图之间看到一条细线,但对用户来说并不是很明显,如果这打扰了您,您可以深入 UISearchbar 的视图层次结构并将视图放入正确的位置。

于 2014-09-21T06:21:25.390 回答