在 UITableViewController 顶部添加一个视图,该视图最初是隐藏的,直到用户下拉
Posted
技术标签:
【中文标题】在 UITableViewController 顶部添加一个视图,该视图最初是隐藏的,直到用户下拉【英文标题】:Adding a view on top of a UITableViewController that is initially hidden until the user pulls down 【发布时间】:2014-03-18 11:32:26 【问题描述】:我想在 UITableViewController 顶部添加搜索,但我希望最初隐藏该字段(如 Notes 应用程序),直到用户下拉显示它。我怎样才能做到这一点?
谢谢,
【问题讨论】:
你试过了吗? ***.com/a/9632860/2629258 【参考方案1】:您应该使用UITableView
的tableHeaderView
。在代码中完成后,它看起来像这样:
-(void)viewDidLoad
[super viewDidLoad];
UISearchBar *searchBar = [[UISearchBar alloc]initWithFrame:CGRectMake(self.tableView.bounds.origin.x, self.tableView.bounds.origin.y, self.tableView.bounds.size.width, 44.0)];
self.mySearchDisplayController = [[UISearchDisplayController alloc] initWithSearchBar:searchBar contentsController:self];
self.mySearchDisplayController.searchResultsDelegate = self;
self.mySearchDisplayController.searchResultsDataSource = self;
self.mySearchDisplayController.delegate = self;
self.tableView.tableHeaderView = searchBar;
【讨论】:
【参考方案2】:您可以将 tableview 搜索栏与搜索栏委托一起使用。
在 viewDidLoad 方法中,您可以手动向上滚动表格视图。您可以在搜索栏上设置一个 IBoulet 以访问其框架的高度以了解其高度。
【讨论】:
以上是关于在 UITableViewController 顶部添加一个视图,该视图最初是隐藏的,直到用户下拉的主要内容,如果未能解决你的问题,请参考以下文章
我想通过在 Swift 中以编程方式将 UINavigationController 与 UITableViewController 嵌入 UITableViewController 这是 UITab
在 UITableViewController 中没有调用 cellForRowAtIndex?
在 UITableViewController 之外使用 NSFetchedResultsController