2015-10-27 51 views
0

我有一个UIView作为我的tableview标题,但由于某种原因,宽度略小于模拟器。我无法解决这个问题。所述的tableview是一个视图控制器的内部和UIView的已被分配这样的:UIView表视图标题宽度错误

UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.frame.size.width, 40.0)]; 

宽度表示375而不是400,因为它被认为是因此它是在iPhone 6模拟器和上略小我的iPhone 6

Here is the image of the UIView headers.

我知道iPhone 6本身是375的宽度,但如果你看到视图的宽度尺寸检查它说400,你可以在下面的图片中看到。你也可以看到UIView是如何比UITableView宽度略小的。这可能是由于一些间距问题,我不确定。添加到uitableview的约束条件是顶部和底部为0间距,左侧和右侧为-20。

Width in Size Inspector

+0

iPhone 6上的'self.view.frame.size.width'应该是375,400怎么样? – user3480295

+0

检查我的更新。 – user3129120

回答

0

你应该设置你的框架:

viewDidLayoutSubviews 

因为在它的帧是正确的。

+0

你能更具体吗?我准确使用哪一帧? self.view.frame.size.width在viewDidLayoutSubviews中仍然是375。 – user3129120

+0

iPhone 6的屏幕尺寸是375.你的男人6加吗? –

+0

检查我的更新。 – user3129120

0

我有一种感觉,这是我在我的桌面上的-20间距。我不知道如何将它设置为0,但walk_alone建议取消选中约束到边距,这允许我为两个边界约束设置间距为0。这允许UIView占据全部宽度。