[英]iOS UIScrollView in UIWindow
我目前正在制作一个iOS项目,其中有一个UIScrollView
作为UIWindow
的直接子视图(使用[window addSubview:scrollView];
)。 窗口的框架及其内容已正确设置,并且contentSize
设置为大于窗口的框架。 当我尝试滚动UIScrollView时,它根本不会滚动。 scrollEnabled
和pagingEnabled
都设置为YES
,但是scrollview不滚动,这使我相信滚动视图甚至没有接收到触摸/滚动事件。 如果该窗口有所不同,则该窗口将添加一个UITapGestureRecognizer
。 我是否需要以某种方式将滑动事件转发到UIScrollView
,还是有其他原因导致其不滚动?
编辑:这是一些代码。
float count=ceil([self.msgArray count]/2); //msgArray has length of 3+, NSLog()'d and confirmed.
float contentHeight=97.5 * count;
[dataScrollView setContentSize:CGSizeMake(320,contentHeight)];
dataScrollView.userInteractionEnabled=YES;
dataScrollView.pagingEnabled=YES;
dataScrollView.scrollEnabled=YES;
dataScrollView.clipsToBounds=YES; //Have also tried with this set to NO, or not set at all.
//Add subviews to dataScrollView.
编辑:这是更多信息。 记录时contentHeight为195.00。 我删除了委托方法,回到了滚动视图的直接子视图。 窗口的高度为97.50。
编辑:我还从UIWindow中删除了UITapGestureRecognizer,但是scrollview仍然无法滚动。
啊, UITapGestureRecognizer
! 这可能是一个错误,使我花了数小时才能确定自己的项目。 是否将其cancelsTouchesInView
属性设置为NO
呢? (默认YES
是”。如果您不期望它,它确实会让您失望。)
只需记录scrollview边界的宽度/高度。 您要设置的内容高度应大于滚动视图的高度。 如果更多,则滚动视图将自动启用其滚动。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.