Objective c UITableView第一个单元格和标题覆盖之间的分隔符UISearchBar
我正在将一个动态滚动的UISearchBar添加到tableview的顶部。为此,我添加了UISearchBar作为tableview的子视图,然后实现了scrollviewdelegate方法,以便搜索栏始终固定在顶部。我还相应地设置了tableView的contentInset,这样最上面的单元格的偏移量就足以容纳搜索栏 我遇到的唯一问题是在tableview中第一个单元格上方绘制的默认分隔符。从顶部开始向下滚动时,分隔符实际上绘制在搜索栏的上方,而不是下方。这造成了一个可怕的用户界面错误,我想修复它。注意,这只发生在第一个单元格中;单元格之间的每一个分隔符都会在搜索栏下滚动,而且不会有相同的UI错误。有什么想法吗Objective c UITableView第一个单元格和标题覆盖之间的分隔符UISearchBar,objective-c,ios,uitableview,Objective C,Ios,Uitableview,我正在将一个动态滚动的UISearchBar添加到tableview的顶部。为此,我添加了UISearchBar作为tableview的子视图,然后实现了scrollviewdelegate方法,以便搜索栏始终固定在顶部。我还相应地设置了tableView的contentInset,这样最上面的单元格的偏移量就足以容纳搜索栏 我遇到的唯一问题是在tableview中第一个单元格上方绘制的默认分隔符。从顶部开始向下滚动时,分隔符实际上绘制在搜索栏的上方,而不是下方。这造成了一个可怕的用户界面错误,
您确定UISearchBar位于最前面吗?在
viewDidLoad
中,尝试将其放在代码的最前面。如果这不能解决问题,请考虑另一种解决方案。以下是一些-请尝试其中任何一种:
- 使UISearchBar成为UITableView(不是节;表视图本身)的标题。这是非常标准的界面
- 如果您使用的是iOS 6,请使用约束将搜索栏固定到视图层次结构中比表视图更高的视图,而不是滚动视图委托技巧(在iOS 6之前这是非常标准的,做得很好)。(因为您在导航控制器中,所以在您的情况下,这将是导航控制器的视图。)这是防止滚动视图子视图与内容一起滚动的新iOS 6方法。我不知道这是否能解决问题,但值得一试
- 不要使用默认分隔符。在单元格背景图像中绘制自己的分隔符并不困难