【问题标题】:UITableViewController with SearchBar带有 SearchBar 的 UITableViewController
【发布时间】:2013-04-24 08:24:03
【问题描述】:

我已尝试以下两种方法将 SearchBar 放置在 UITableView 上。

  1. TabBarController > UITableViewController(Put SearchBar)
  2. TabBarController > UIViewController > UITableViewController(Put SearchBar)

当我尝试第二种方法时,它不起作用。 (SearchBar 无法在 UITableViewController 上显示)

谁能告诉我发生了什么?

这是我的 xcode 项目文件: http://www2.zshares.net/tg14vowqzvaw

【问题讨论】:

  • 有大量可用的教程或相关的教程。你为什么不在谷歌上输入“搜索栏 iphone 教程”?
  • 是的,我可以在网上找到很多教程。这些教程无法解释这个问题。
  • 没有人这意味着你没有很好地搜索我已经看到很多人相信我:) 而且你知道他们会告诉你比你在这里得到的任何答案都多。有人提出了你的问题,但我会做出我不想让你气馁

标签: ios xcode uitableview cocoa-touch searchbar


【解决方案1】:

执行此操作的通常方法是将 saerch 栏放在它应该搜索的 uitableview 的标题部分中。您可以使用

-tableview: viewForHeaderInSection:

来自 UITableViewDelegate-Protocol 的方法。他在 TableViewControllers 和只有一个 TableView 的常规 ViewControllers 中工作。有关此示例,请参阅 iphone 上的邮件应用程序。 如果您真的需要将搜索栏放在 tableview 之外,那么您将不得不使用常规视图控制器并将搜索栏放在 tableView 上方/下方的视图中。 除此之外,我不知道该告诉你什么。什么是 TabbedViewController?你是说 TabBarController 吗?这与搜索栏有什么关系?我有点缺乏时间来完成您的项目,所以如果您重新提出问题,也许我可以给出更好的答案?

编辑------------------------------ -------

tableviewcontrollers 会对你这样做。基本上,他们将允许一个 tableview 一次在其中。此外,这个 tableview 总是会填满整个可用空间。现在,您可以使用一个例外:像 NavigationBar 或 TabBar 这样的元素可以与 tableview 一起使用,因为它们是导航所必需的。因此,如果您可以将您的东西放入其中之一,那就完全没问题了。这似乎违反直觉,因为我什么时候只想在屏幕上显示一个裸表视图?答案是:通常情况下。使用此处指定的 UITableVIewDelegate-Protocol 可以高度自定义表格视图: http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableViewDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intf/UITableViewDelegate 帮自己一个忙并阅读该文档,我几乎可以保证从长远来看您会节省时间。 例如:您知道 iPhone 上的联系人应用程序吗?如果您查看某个特定联系人的详细信息,您会发现数据非常复杂,如果您点击编辑,它甚至会进入编辑模式。它有一个页眉、多个段和一个页脚。 惊喜:所有这些只是 tableviewcontroller 中的一个 tableview,通过协议定制。让我重复一遍:如果你尝试以其他方式去做,你就是在浪费自己的时间。 tableviewcontrollers 的存在是有原因的。使用它们

【讨论】:

  • 感谢您的建议。这是我的错误,那是 TabBarController。我只想修复 TableView 上方的 SearchBar。我想我会尝试常规的视图控制器。坦白说,我还是很困惑。为什么 SearchBar 可能适用于第一种方式?无论我做什么,SearchBar 都更接近 TableViewController。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-06-24
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-15
相关资源
最近更新 更多