将 UISearchBar 作为子视图添加到 tableView 标题中
Posted
技术标签:
【中文标题】将 UISearchBar 作为子视图添加到 tableView 标题中【英文标题】:Adding UISearchBar into tableView header as subview 【发布时间】:2012-04-06 06:47:33 【问题描述】:我正在尝试向UITableView
添加一个自定义标题,其中包含一些按钮和一个UISearchBar
。
问题是,当我尝试使用 searchBar 时,我收到一条消息:
setting the first responder view of the table but we don't know its type (cell/header/footer)
有人遇到过这样的问题吗?
【问题讨论】:
【参考方案1】:您是否通过以下方式添加到表格中:
[self.tableView addSubview:customView]
如果是这样,那可能是您的错误。将子视图添加到 UITableView 需要您明确地将它们添加为页眉、页脚或单元格。试试:
self.tableView.tableHeaderView = customView
【讨论】:
不正确。你可以以任何你想要的方式向 UITableView 添加子视图,就像任何其他 UIView 一样。【参考方案2】:只需按照这里的简单步骤..
-
在“.h”文件中为 mySearchBar 创建一个属性并进行合成。
在 viewDidLoad/viewDidAppear 方法中设置其属性(或者您可以在 Interface Builder 中简单地进行)
使用以下委托方法将其设置为表格视图的标题...
– (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
return self.mySearchBar;
【讨论】:
@Bartek 想要一个包含搜索栏的自定义标题,而不是搜索栏本身。 @Anthony:如果您只想要搜索栏而标题视图中没有其他内容,那么这应该可以正常工作。请试试这个,如果它不起作用,请告诉我。 OP 不仅想要一个搜索栏,他/她还想要按钮。您提出的问题的解决方案是错误的。以上是关于将 UISearchBar 作为子视图添加到 tableView 标题中的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS7 中使用 UISearchBar 将子视图添加到 tableHeaderView 行为不端
UITextfield 在 iOS 7 中不能作为 UISearchBar 的子视图?