从不同的控制器进行调用时,滚动视图低于应有的值

时间:2016-05-28 04:00:34

标签: ios objective-c uitableview uiscrollview segue

我有两个表视图控制器,它们都可以转到具有滚动视图的同一视图。

出于某种原因,对于一个视图,滚动视图低于另一个视图。

如您所见,第一个来自家庭视图控制器,比另一个更低。

我将框架的位置设置为:

_scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, navBarHeight + statusHeight, self.view.bounds.size.width, self.view.bounds.size.height)];

enter image description here enter image description here

3 个答案:

答案 0 :(得分:1)

在设置子视图的框架时,您不需要考虑导航栏和状态栏的高度。而不是y等于navBarHeight + statusHeight,将y设置为0。

如果还有差距,还要将视图控制器的automaticallyAdjustsScrollViewInsets属性设置为false以防止出现这种情况:

self.automaticallyAdjustsScrollViewInsets = NO;

答案 1 :(得分:0)

如果您希望滚动视图在导航栏下方开始,您可以将y设置为0,并且

self.automaticallyAdjustsScrollViewInsets = NO;
self.edgesForExtendedLayout = UIRectEdgeNone;

答案 2 :(得分:0)

在故事板中,单击视图控制器。在Attributes inspector 取消选中 Adjust Scroll View Insets,您就完成了。

Uncheck Adjust Scroll View Insets