iOS UIScrollView 自动偏移问题

当我们调用presentViewController 从竖屏跳转到横屏的时候,原来竖屏里面的UIScrollView会自动发生偏移

问题现象为:

1. 触发方法:
    UIScrollView _notifyDidScroll
2.触发发生偏移UIScrollView的代理方法:
    -(void)scrollViewDidScroll:(UIScrollView *)scrollView
3.再次触发1和2的方法

原因:

1.设置UIScrollView的约束的时候,没有指定它的(滑动方向上的)宽度,而是通过左右约束来动态生成宽度
2.当屏幕旋转的时候,UIScrollView的宽度会因为约束发生变化
3. UIScrollView的宽度发生变化后,其contentOffset也会发生变化,所以回到竖屏控制器后就回发生偏移

解决办法

设置UIScrollView可以滑动的方向上的约束要设置为固定值,
比如水平滑动要设置宽度为屏幕宽度,这样滑动方向上的宽度或者高度不会发生变化,
所以contentOffset也不会发生变化,所以就不会在跳转横屏时发生偏移
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 代码创建UIWindow对象 Xcode7之后使用代码创建UIWindow对象: //创建UIWindow对象 s...
    云之君兮鹏阅读 5,264评论 0 2
  • 未完,待更新 一、必备题 1、AFN 原理 链接:AFNetworking源码——基本架构 - 简书 2、SDWe...
    小熊_07cb阅读 7,970评论 3 27
  • 推荐指数: 6.0 书籍主旨关键词:特权、焦点、注意力、语言联想、情景联想 观点: 1.统计学现在叫数据分析,社会...
    Jenaral阅读 11,076评论 0 5
  • 昨天,在回家的路上,坐在车里悠哉悠哉地看着三毛的《撒哈拉沙漠的故事》,我被里面的内容深深吸引住了,尽管上学时...
    夜阑晓语阅读 9,230评论 2 9
  • 一。匹配。 判断一个字符串是否符合我们制定的规则? 二…捕获 字符串中符合我们正则表达式,规则的,内容捕获到。 三...
    时修七年阅读 4,605评论 2 0

友情链接更多精彩内容