1

在我的应用程序中,使用以下代码激活了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 之后也可以使滚动工作?谢谢你的帮助 ...

4

2 回答 2

1

我最近有一个类似的问题。我的有一个 ViewControllerA,它是 ViewControllerB 的父级,而 ViewControllerB 又是 ViewControllerC1..N 的父级。ViewControllerB 有一个滚动视图,它滚动 ViewControllerC1..N 的视图。它只能在 iOS9 上重现。

如果我提出 UIImagePickerController 以从 ViewControllerA 的图库(sourceType == UIImagePickerControllerSourceTypePhotoLibrary)中获取图像,则在解除它之后 ViewControllerB 的滚动视图将停止正确滚动。

我已经做了一个解决方法。我将虚拟视图控制器推入导航堆栈,然后呈现图像选择器,然后弹回 ViewControllerA。这样就可以了。

似乎在 iOS9 UIImagePickerController 中,它的呈现视图控制器中的触摸事件弄乱了一些东西。

于 2015-10-01T09:50:09.100 回答
-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];
    }];
于 2013-05-13T13:37:36.357 回答