ios - UIScrollView 滚动背景 View

标签 ios xcode swift uiscrollview

我有一个 UIScrollView(背景清晰),在它后面有一个 UIImage,它占据了设备高度的大约 1/3。为了初始显示作为 ScrollView 的图像,我将 ScrollView contentInset 设置为使用与图像相同的高度。这正是我想要的,初始显示图像,但向下滚动最终会用 ScrollView 内容覆盖图像。

唯一的问题是我在图像上添加了一个按钮。但是它不能被触摸,因为 UIScrollView 实际上在它的顶部(即使由于背景清晰可以看到按钮)。我怎样才能让它发挥作用。

enter image description here

enter image description here

编辑:

以下解决了问题:

 //viewdidload
    self.scrollView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: "onScrollViewTapped:"))
    ...
    func onScrollViewTapped(recognizer:UITapGestureRecognizer)
        {
            var point = recognizer.locationInView(self.view)
            if CGRectContainsPoint(self.closeButton.frame, point) {
                     self.closeButton.sendActionsForControlEvents(UIControlEvents.TouchUpInside)
            }
        }

最佳答案

感谢您提供屏幕截图和引用 Google map 来完成您正在寻找的内容,我现在明白您在说什么了。

我注意到图像是可点击的并且可以滚动,但图像本身没有显示按钮。您可以做的是在您的 UIScrollView 中放置一个覆盖图像的清除按钮,以便在您能够看到它时使其可点击。据我所知,您将无法单击 UIScrollView 下的任何内容。

请告诉我这是否适合您。

关于ios - UIScrollView 滚动背景 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30898336/

相关文章:

ios - 如何从另一个 UIViewController 更改分段控件标题(设置)

XCode 6 GM 占用磁盘空间和内存

swift - 如何使用类型为 "Cannot invoke ' 的参数列表修复 '(eventStore: EventStoring)' createEvent'

ios - Firebase - 无法执行对后端的调用

ios - 无法转换类型 'NSString' 的值?预期参数类型 'String'

ios - UITableViewCell : dequeueReusableCellWithIdentifier: Change button background per cell on a certain action

ios - 重新定位 UICollectionViewCells?

ipad - 自动续订订阅发生未知错误

iphone - 如何从 UIWebview 中删除选择?

iphone - UITableView - 突出显示选定的单元格 [iOS]