我发现您可以简单地将视图放入 Xcode 中的存储桶中,但不能放入视图控制器中。(见图)
然后,我发现如果我为此做了一个出口UIView
,我仍然可以使用它。请注意,在将视图移到此位置之前,我必须以编程方式或在 IB 中设计视图并使其具有适当的大小等,因为我在 IB 中再也看不到它了。
然后,在TableViewController
课堂上,我曾经ViewWillAppear
检查过备份 TableView 的数组的计数。如果它为零,我将视图(使用 Outlet)设置为隐藏或不隐藏。
接下来,我使用了这段代码:
-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
if (noConnectionView.hidden)
{
return 0;
} else {
return 480;
}
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
if (noConnectionView.hidden)
{
return nil;
} else {
return noConnectionView;
}
}
这使它填充了我的弹出框,并且由于 section 方法的单元格数返回了我已经检查过的相同计数(如果表为空,则为零),这是唯一显示的内容(没有空单元格)。
当有东西要显示时,ViewWillAppear
每次都会被调用(每当东西被删除时,我都会再次调用view),然后tableView摆脱了标题,它的行为就像一个普通的tableView。
这很棒,因为您可以将它与UITableViewController
导航控制器一起使用或按顺序使用。