我正在开发一个 iOS 应用程序,我想添加一个搜索按钮来启动对表格视图的搜索。搜索时,搜索栏不应与表格单元格一起滚动。
问问题
922 次
1 回答
2
要使搜索栏(或任何视图)“粘”在顶部或底部,UITableView
有两种方法:
将表格的框架调整为视图高度减去栏的高度,然后将栏的框架设置为
{0, 0, CGRectGetWidth(self.tableView.frame), CGRectGetHeight(self.tableView.frame)}
,这会将其静态定位在视图的底部。如果您使用的是 stockUITableViewController
,则需要做一些额外的工作,因为self.view
两者self.tableView
都指向同一个对象。您需要设置一个新UIView
的self.view
,然后将其作为表格视图和搜索栏视图的容器。将栏添加为表格的子视图,然后
UIScrollViewDelegate
在您的控制器中实现并使用scrollViewDidScroll:
(每当用户滚动视图时触发)来更新栏的位置。新职位将类似于:CGRect adjustedFrame = self.searchBarView.frame; adjustedFrame.origin.y = self.tableView.contentOffset.y + CGRectGetHeight(self.tableView.frame) - CGRectGetHeight(self.searchBarView.frame); self.searchBarView.frame = adjustedFrame;
于 2013-04-14T15:40:18.810 回答