当用户在UIButton上滑动时,UIScrollView停止工作



我发现,当我尝试滚动scrollview时,如果你拖动其中一个按钮,它会阻止scrollview滚动。如果你拖拽滚动视图的一个空部分,它将滚动,不包含任何内容。有人知道这个问题的解决方法吗?

我的。h文件只有一个滚动视图和顶部的图像:

@property (strong, nonatomic) IBOutlet UIScrollView *scrollView;
@property (strong, nonatomic) IBOutlet UIImageView *bodyImage;

我的。m文件有这个来启用滚动

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
[_scrollView setScrollEnabled:YES];
[_scrollView setContentSize:CGSizeMake(640, 1136)];
}

- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

然后我在图像的顶部添加了一个按钮,并将其推送到另一个视图控制器。

我可以看到为什么它只是点击按钮并进入下一个视图,因为按钮在顶部!我基本上只是希望用户能够滚动页面,当他/她实际点击,然后它去到下一个视图!

谢谢你的帮助,我真的很感激。

尝试设置UIScrollView's delaysContentTouches属性为NO

当你拖拽按钮时,UIButton是触摸事件的FirstResponder视图。这就是为什么scrollView在拖动按钮时不滚动的原因。

设置UIScrollView的delaysContentTouches属性为NO,由@Hitendra建议。这将基本解决问题…:)

你能在这里添加一些你的示例代码吗?我们可以查看一下

最新更新