iOS-进阶学习

UIScrollView加在UINavigationContro

2017-01-24  本文已影响325人  806349745123

最近写一个demo打算用一个scrollview(背景是蓝色)实现无线轮播的功能,然后放UINavigationController的viewDidload方法上addSubview到UINavigationController的View上。效果如下

Paste_Image.png

会发现scrollview上的imageView的contentOffet好像向下位移,打印imageView的坐标Y值都是0没有问题。仔细看看蓝色的区域高度刚刚好和navigationbar的高度一样。
后来发现问题是:

iOS7之后,当UIViewController成为UINavigationController的控制视图,UIViewController的控制视图上的第一个子视图是UIScrollView,UIScrollView会往下偏移64px的位置,64px是UINavigationBar的44px高度加上状态条20px的高度。

解决办法:
设置UINavigationController的automaticallyAdjustsScrollViewInsets属性

self.automaticallyAdjustsScrollViewInsets = false
Paste_Image.png
上一篇 下一篇

猜你喜欢

热点阅读