首页 > 解决方案 > UIScrollView 上方的 UIButton。修饰事件未发生

问题描述

我在故事板中有一个滚动视图。UIButton 位于此滚动视图上方(“关闭”):

在此处输入图像描述

我还在代码中添加了 imagesView 作为此滚动视图的子视图:

        for i in 0..<dataImages.count{


        let imageView = UIImageView()
        imageView.contentMode = .scaleToFill
        imageView.image = UIImage(named: dataImages[i]+".jpg")
        let xPos = CGFloat(i)*self.view.bounds.size.width

        imageView.frame = CGRect(x: xPos, y: 0, width: view.frame.size.width, height: sv.frame.size.height)
        sv.contentSize.width = view.frame.size.width*CGFloat(i+1)
        imageView.isUserInteractionEnabled = true
        sv.addSubview(imageView)

    }

不幸的是,当按钮位于滚动视图上方时,UIButton touch up inside 事件不起作用(如果我将它移到它下面它可以工作)。我该如何解决?

标签: iosswiftuiscrollviewuibuttonautolayout

解决方案


我希望我能帮助你,但我真的可以看到发生了什么,但我会教一种方法来检查你的视图发生了什么,首先,你运行应用程序然后你去你想要调试你的层次结构和在 Xcode 上,您从屏幕顶部选择调试 -> 视图调试 -> 捕获层次结构,这实际上是捕获所有视图,为此,您可以检查滚动视图是否位于按钮顶部


推荐阅读