UIScrollview 仅在拖动 uiviews 时滚动

Posted

技术标签:

【中文标题】UIScrollview 仅在拖动 uiviews 时滚动【英文标题】:UIScrollview only scrolling when dragging uiviews within 【发布时间】:2012-06-14 19:41:55 【问题描述】:

我正在尝试创建一个滚动视图,它将有许多视图(uiimageviews、uitextfield 等)并且它们是间隔开的。滚动有效,但仅当您实际触摸其中的 uiImages 时。只要您触摸滚动视图中的任何位置,我就希望它滚动。我确定这是一个新手错误,但如果您需要代码,我可以发布一些。

更新 这很奇怪,但如果我将 uiscrollview 设置为 backgroundColor,它似乎可以工作,但如果它的 clearColor 则它不起作用。

更新 2 更奇怪的是,如果我设置 [self.view setBackground = [UIColor whiteColor]]`,滚动视图在没有背景颜色的情况下工作得非常好。使用背景颜色是否有某种要求?

有人知道怎么回事吗?

【问题讨论】:

【参考方案1】:

当视图设置了clearColor 时,不会响应触摸事件。检查我最近接受的答案之一,以获取另一个 SO Post 上的解决方案。

UIView background color affects touches in ios 5

【讨论】:

谢谢这是个好建议。幸运的是,我不打算使用 clearBG,它只是在测试过程中让我感到困惑。这是苹果故意的吗?

以上是关于UIScrollview 仅在拖动 uiviews 时滚动的主要内容,如果未能解决你的问题,请参考以下文章

在 UIScrollView 中拖动一个 UIView

如何在 UIScrollView 中实现可拖动的 UIView 子类?

uiscrollview 水平拉动以根据拖动的距离选择对象

可拖动的 UIView 在添加到 UIScrollView 后停止发布 touchesBegan

UIScrollView 通过在框架内拖动来滚动

UIView iOS 上的可拖动行为的名称是啥?