我正在更改我的tableviews contentInset,这样当用户滚动超出表格的上限时,tableview会显示隐藏在tableView上方的UISearchBar。
除了节标题视图外,一切正常。当向下滚动时,sectionHeaderView的顶部边界与我的tableview插图相距离屏幕顶部的距离相同,这是它在起始位置:
在上图中,sectionheader视图设置为正确的位置,tableview inset已设置为显示搜索字段。
你可以在第二个截图中看到,由于43像素的tableview插图,headerview的上限被设置得较低,因为它应该粘在屏幕顶部隐藏“相关”单元格并在发布时弹回。
我想我需要以某种方式抵消Inset,我只是不确定如何......
答案 0 :(得分:6)
我假设你想要的是一个像Mail应用程序中的搜索字段;列表最顶部的搜索字段默认不可见?
解决方案不是使用contentInset
,而是使用
UISearchBar
设置为tableviews tableHeaderView
。UISearchDisplayController
。contentOffset
设置为44点,以隐藏搜索栏。Apple有一个很好的示例应用程序作为起点:http://developer.apple.com/library/ios/#samplecode/TableSearch/Introduction/Intro.html