在 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】:

您应该使用UITableViewtableHeaderView。在代码中完成后,它看起来像这样:

-(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

在 UITableViewController 之外使用 NSFetchedResultsController

在 UINavigationController 中显示 UITableViewController

在 UITableViewController 中设置导航栏颜色。