我已将UiRefreshController添加到UiTableView作为子视图,它运行良好,但它也为表视图的头部添加了额外的空间。此问题仅出现在iOS7中。
代码:
refreshControl = [[UIRefreshControl alloc] init];
refreshControl.tag = 99;
[refreshControl addTarget:self action:@selector(handleRefresh:) forControlEvents:UIControlEventValueChanged];
[self.tableView addSubview:refreshControl];
self.tableView.alwaysBounceVertical = YES;
[refreshControl beginRefreshing];
[refreshControl endRefreshing];
答案 0 :(得分:7)
尝试将其添加到视图控制器:
viewController.edgesForExtendedLayout = UIRectEdgeNone;
iOS7可能会添加一些空间来尝试填充导航栏。
答案 1 :(得分:1)
几天前我发现了这个问题。
添加
viewController.edgesForExtendedLayout = UIRectEdgeNone;
将消除额外的空间,但是,如果仔细观察,您会发现在添加上一个代码行后,导航栏颜色也会被修改。
但是,使用storyboard添加pull to refresh功能将为您提供干净的输出。
在故事板上选择TableViewController - >在属性检查器下 - >设置"刷新"启用。