ios - 如何在 Xcode 中的表格 View 底部添加搜索栏?

标签 ios objective-c uitableview uisearchbar

我正在开发一个 iOS 应用程序,我想添加一个搜索按钮来启动对 TableView 的搜索。搜索时,搜索栏不应随表格单元格一起滚动。

最佳答案

要使搜索栏(或任何 View )“固定”到 UITableView 的顶部或底部,有两种方法:

  • 将表格的框架调整为 View 高度减去栏的高度,然后将栏的框架设置为 {0, 0, CGRectGetWidth(self.tableView.frame), CGRectGetHeight( self.tableView.frame)},这会将它静态定位在 View 的底部。如果您使用的是普通的 UITableViewController,您需要做一些额外的工作,因为 self.viewself.tableView 都指向同一个对象。您需要将新的 UIView 设置为 self.view,然后它将成为表格 View 和搜索栏 View 的容器。

  • 将栏添加为表的 subview ,然后在 Controller 中实现 UIScrollViewDelegate 并使用 scrollViewDidScroll:(每当用户 ScrollView 时触发)更新酒吧的位置。新职位类似于:

    CGRect adjustedFrame = self.searchBarView.frame;
    adjustedFrame.origin.y = self.tableView.contentOffset.y + CGRectGetHeight(self.tableView.frame) - CGRectGetHeight(self.searchBarView.frame);
    self.searchBarView.frame = adjustedFrame;
    

关于ios - 如何在 Xcode 中的表格 View 底部添加搜索栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15993597/

相关文章:

ios - 以编程方式编辑 UITableView 在所有行上显示删除按钮

iphone - iOS - 以编程方式在 TableRow 的右侧添加 ToggleSwitch

ios - 使用 Cloud Code Parse.com iOS 删除 PFUser

ios - 在 Swift 中检查字符串是否为 3 个字符和 3 个数字

objective-c - UIScrollView 不会滚动

ios - 如何将大类分成小类?

iphone - 在 UItableview 中调整页脚大小

ios - 如何跟踪 iPhone 应用程序的转化?

iPhone 如何保存 View 状态

swift - CoreData 数组中的数据未显示在 TableView 上