TableView最初从错误的位置开始

时间:2014-09-27 10:02:05

标签: ios objective-c iphone uitableview ios8

当我将应用程序从iOS 7更新到iOS 8时,出现了这个问题。我的tableview最初从错误的位置开始。一旦你触摸它或滚动它。 tableview滚动到正确的位置并按预期工作。

表视图嵌入在UIPageViewController中。

UITableView *tableView = (id) [self.view viewWithTag:5];
[tableView registerClass:[BroadcastCell class] forCellReuseIdentifier:CellBroadcastTableIdentifier];
[tableView registerClass:[BroadcastHeaderCell class] forCellReuseIdentifier:CellBroadcastHeaderTableIdentifier];
[tableView setSeparatorInset:UIEdgeInsetsZero];
tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 64.0f)];
tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 0.0f)];
[tableView setDelegate:self];
[tableView setDataSource:self];
tableView.backgroundColor = [UIColor clearColor];
tableView.opaque = NO;
tableView.backgroundView = nil;
tableView.rowHeight = UITableViewAutomaticDimension;
tableView.estimatedRowHeight = UITableViewAutomaticDimension;

可以找到屏幕截图 - https://pbs.twimg.com/media/Byh_5eIIQAA06ok.png:large

2 个答案:

答案 0 :(得分:0)

我有同样的问题。经过多方努力,我发现在上一个视图中我正在使用

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"title-bar-bg.png"] forBarMetrics:UIBarMetricsDefault];

我把它改成了

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"title-bar-bg.png"] forBarMetrics:UIBarMetricsDefault];

问题解决了。

答案 1 :(得分:0)

选择视图控制器并取消选择故事板上的“调整滚动视图插图”属性(在“查看控制器”部分下)。

OR

添加以下行

self.automaticallyAdjustsScrollViewInsets = NO;