Ios 为什么故事板和模拟器的布局不同?

Ios 为什么故事板和模拟器的布局不同?,ios,iphone,xcode,uiscrollview,storyboard,Ios,Iphone,Xcode,Uiscrollview,Storyboard,如下图所示,在故事板中,我将一个UIScrollView(称为a)放在导航栏下,另一个UIScrollView(称为B)放在a内。B位于a的顶部 然而,在模拟器中,B和A的上界之间有很大的差距(我没有使用任何自动布局或编写任何代码)。谁能告诉我原因吗?谢谢 即使您没有使用自动布局,您也在故事板中选中了自动布局。因为您这样做,UIScrollView及其任何子类(UITableView,UICollectionView等)在UINavigationController中时都会自动调整UINavig

如下图所示,在故事板中,我将一个UIScrollView(称为a)放在导航栏下,另一个UIScrollView(称为B)放在a内。B位于a的顶部

然而,在模拟器中,B和A的上界之间有很大的差距(我没有使用任何自动布局或编写任何代码)。谁能告诉我原因吗?谢谢


即使您没有使用自动布局,您也在故事板中选中了自动布局。因为您这样做,
UIScrollView
及其任何子类(
UITableView
UICollectionView
等)在
UINavigationController
中时都会自动调整
UINavigationBar
高度。这是隐式的,无法关闭。唯一的解决方案是“偏移偏移量”或将
UIScrollView
UINavigationBar
大边距大小是导航栏高度,请尝试为滚动视图添加顶部自动布局。

在-(void)ViewDiLoad方法中添加以下行

self.automaticallyAdjustsScrollViewInsets = NO;

希望它能解决您的问题。

谢谢。你能告诉我更多关于如何“偏移”的信息吗?你的意思是我应该将负y偏移的B设置为与a的y偏移相同吗?是的,因此在你的
视图中会出现/Did
你可以重置位置。也可以使用
UIScrollView
中的contentOffset。还有其他一些方法,但这些是我见过的最常见的。你能说得更详细些吗?谢谢。请尝试将序列图像板中导航栏的半透明属性设置为false