调整tableHeader的大小在iPhone5上失败

时间:2015-12-10 00:17:59

标签: ios objective-c

我正在调整tableheader,这是一个视图,在我的表中,名为detailedInterestTableView。此方法放在(void)viewDidLayoutSubviews方法中。从iPhone 6或iPhone 6+运行时,此功能正常。当它在我的iPhone 5上运行时,这段代码根本不会影响用户界面,并且表格标题保持不变。

此代码是否仅适用于某些设备(iPhone 6及更高版本)?与iPhone 6和iPhone 6+相比,我的iPhone 5会有什么不同?它们都在9.2版本上运行。

-(void)viewDidLayoutSubviews{
    CGRect newFrame = self.detailedInterestTableView.tableHeaderView.frame;
    newFrame.size.height = newFrame.size.height-92;
    self.detailedInterestTableView.tableHeaderView.frame = newFrame;
    [self.detailedInterestTableView setTableHeaderView:self.detailedInterestTableView.tableHeaderView];
}

iPhone 6/6 +。照片下面的空白区域(包含喜欢/不喜欢/评论按钮)是正确的:

enter image description here

iPhone5的。照片下面的空白区域(包含喜欢/不喜欢/评论按钮)不正确。这太大了。

enter image description here

1 个答案:

答案 0 :(得分:0)

您正在使用相对更改修改框架高度:-92
因此,如果帧原来不一样,结果也会不同。尝试使用固定值。

尝试替换

newFrame.size.height = newFrame.size.height-92;

通过

newFrame.size.height = 500; // Or any other value that fits