在我的应用程序中,使用以下代码激活了scrollview。
scroll.contentSize = CGSizeMake(320, 760);
[scroll setScrollEnabled:YES];
[scroll setCanCancelContentTouches:NO];
scroll.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scroll.clipsToBounds = YES;
scroll.pagingEnabled = NO;
scroll.autoresizesSubviews=YES;
[scroll setContentMode:UIViewContentModeScaleAspectFill];
但是在使用UIImagePicker / controller.ie之后。从电话库中选择图像后,滚动无效。上面的代码是在viewWillAppear部分编写的。任何人都可以帮助我,这样我甚至可以在UIImagePickerController之后进行滚动工作吗?谢谢你的帮助...
答案 0 :(得分:1)
我最近遇到过类似的问题。我有一个ViewControllerA,它是ViewControllerB的父级,ViewControllerB又是ViewControllerC1..N的父级。 ViewControllerB有一个滚动视图,可以滚动ViewControllerC1..N的视图。它只能在iOS9上重现。
如果我提出UIImagePickerController从ViewControllerA获取图像(sourceType == UIImagePickerControllerSourceTypePhotoLibrary),则解除它后,ViewControllerB的scrollview会停止正确滚动。
我做了一个解决方法。我将虚拟视图控制器推入导航堆栈,然后呈现图像选择器,然后弹回ViewControllerA。 这样就行了。
似乎在iOS9中UIImagePickerController在其呈现视图控制器中弄乱了触摸事件。
答案 1 :(得分:-1)
替换你的解雇代码并检查:
[picker dismissViewControllerAnimated:YES completion:^{
scroll.contentSize = CGSizeMake(320, 760);
[scroll setScrollEnabled:YES];
[scroll setCanCancelContentTouches:NO];
scroll.indicatorStyle = UIScrollViewIndicatorStyleWhite;
scroll.clipsToBounds = YES;
scroll.pagingEnabled = NO;
scroll.autoresizesSubviews=YES;
[scroll setContentMode:UIViewContentModeScaleAspectFill];
}];