ios - 将所有手势从 UIView 转换为 Swift 上的 UIScrollView

标签 ios swift uiview uiscrollview gesture

我有 UIView 而不是 UIScrollView。

如何将所有手势从 UIView 转换为 UIScrollView:

  • 滚动(滑动)
  • 缩放
  • 拖拉

在我使用 touchesMoved、touchesBegan 和 touchesEnded 方法来平移 UIScrollView 上的点之前,我无法获得相同的效果,例如:

  • 缩放并在缩放值超出最小和最大范围时恢复到最小和最大缩放
  • 滑动滚动
  • 其他

我的问题有解决方案吗?

最佳答案

找到的解决方案:

weak var receiver: UIView!

override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {

    if (self.pointInside(point, withEvent: event)) {
        return self.receiver;
    }
    return nil
}

touchView.receiver = scrollView

关于ios - 将所有手势从 UIView 转换为 Swift 上的 UIScrollView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32413678/

相关文章:

ios - 将淡入淡出效果应用于 UICollectionView 的顶部和底部

ios - 将屏幕坐标转换为 UIView 本地点

ios - 样式 react native 组件 - 当以像素定义时,一切都太大了

swift - 奇怪的不一致的 tableview Swift 4

swift - 将常规 Swift 函数转换为 Curry 函数

ios - 如何在标签行数下调整 UIView 的大小?

iphone - 调整 UIView 的大小

ios - 当表格 View 有两个部分时,如何知道哪一行被选中?

ios - UIView 动画曲线不起作用 easeinout

iOS Swift POST 参数和正文