【问题标题】:How to make offscreen UIScrollView aware of device rotations?如何让屏幕外 UIScrollView 知道设备旋转?
【发布时间】:2012-09-05 08:39:02
【问题描述】:
我已经观看了 WWDC 会话 223 视频,该视频介绍了使用屏幕外 UIScrollView 的 panGestureRecognizer 在 OpenGL 中进行动态滚动。
我正在试验这个和 UIView 后代(而不是演示中的 OpenGL 视图)
一切正常,除了当我旋转设备时,滚动视图仍然计算未旋转坐标中的contentOffset。有什么方法可以指示/连接滚动视图以应用设备旋转/窗口转换?
提前致谢,
【问题讨论】:
标签:
ios
uiscrollview
screen-rotation
【解决方案1】:
原来我没有足够仔细地观看演示视频:滚动视图必须通过将其添加为子视图来连接到根控制器。将 UIScrollView 作为不可见子项添加到它所控制的 UIVIew 可解决问题。
UIView* theViewToControl = [...];
UIScrollView* scroller = [....];
// move gesture recognizer, set delegate etc.
// Up to here it works, except for rotations;
// This is is required to make rotations work too:
[scroller setHidden:YES];
[theViewToControl addSubView:scroller];