0

我的 MasterViewController 中有一个带有 UITableView 的典型 Master-Detail 布局。

在我的 XIB 中,我在 UITableView 顶部放置了一个 UILabel。

我打算使用这个标签来通知用户他/她的搜索条件没有产生任何结果,因此 e 不是表中的行。根据数据,我将显示/隐藏此标签。

我有一个 UIView 作为我的 UITableView 和我的 UILabel 的容器。

为什么,当我运行我的应用程序时,找不到标签,为什么在设计器中,当我点击我的标签(或在桌子上),然后我点击编辑器 - > 排列,都是选项变灰了?

XCODE 屏幕截图

问候!

4

2 回答 2

1

您不能通过界面构建​​器将子视图添加到 UITableViewController。您应该尝试改用 UIViewController。要复制 UITableViewControllers 的好处,您可以将以下内容添加到 -viewDidLoad 方法中(从而防止跳跃的 UIRefreshControls 等)

UITableViewController *tableViewController = [[UITableViewController alloc] initWithStyle:UITableViewStylePlain];
[tableViewController setTableView:self.tableView];

编辑:

这 100% 有效。唯一的解释是您将标签拖到 TableView 而不是它的父视图中。我创建了一个新应用程序,层次结构如下所示:

请注意标签是如何明显内联并位于表格视图下方的?这是模拟器将输出的内容:

希望有帮助。

于 2013-10-01T08:37:08.663 回答
1

UITableViewtableHeaderViewtableFooterView属性。

您可以通过以下方式解决您的问题:self.tableView.tableHeaderView = label;

于 2013-10-01T08:52:51.533 回答