iOS 7 addSubview为我的UIView增加了额外的长度,为什么会这样?

时间:2013-12-27 01:54:39

标签: ios iphone ipad ios7

在我的应用程序中,我在一个窗口中有一个视图控制器,可以在需要时添加一些子视图。所有子视图都使用IBActions和以下代码显示:

[self.view addSubview:myViewIWantToAdd];

除了一个视图外,所有这些都显示正确的尺寸和位置。该方法似乎在视图上添加了另外20个像素,试图显示以产生以下效果:

http://i.stack.imgur.com/th11f.png

从图像中可以看出底部字母拼贴在屏幕边界下方延伸了20个像素。我可以通过将视图的大小从高度568减小到548来解决它。但是这样做会产生一种特殊的效果。当UIView的高度设置为548时,可触摸(用户交互)区域也减少20个像素。这意味着用户无法选择底部字母图块的下半部分。在这个阶段,我很失落,因为我正在实现UIView,就像应用程序中的任何其他UIView一样,没有任何问题。我怎样才能解决这个/我做错了什么?

P.S。我从来没有在iOS 6中遇到过这个问题,我相信它与iOS 7有关。

2 个答案:

答案 0 :(得分:1)

在ios 7中,您的窗口位于状态栏下方,因此您的窗口高度将高出20个点。

您可以调整子视图的帧并设置适当的autoresizingMask属性来解决它。

如果您想让您的应用符合ios7外观,请参阅link

答案 1 :(得分:0)

请在您的设备上测试相同内容。