25226


ViewControllerで、scrollViewのサイズをself.view.frame.width * 3にしています。

初めのViewにUIButtonがあってその上の階層で、scrollViewをスクロールして覆いかぶせています。  
そこでUIButtonのtapを適用させるためにscrollViewのuserinteractionEnabledをfalseにして、UIButtonを押しているようにしているのですが、それではScrollViewがScrollできません。

ScrollViewをスクロールさせることができるようにしながら、初めのViewのUIButtonのタップを適用させる方法はないでしょうか？

前提として必ずScrollViewは一番上の階層に置きたいです。


CC BY-SA 3.0
2016-05-21T10:55:17.983
25063
2016-05-27T10:54:36.103
15591
question
swift scrollview
SwiftのScrollViewについての質問です。


UIScrollViewを継承したクラスを作って、hitTest()をoverrideしてみてはどうでしょう？

[code]

    override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {
    
        // ボタンの上かどうかを自力でチェック
        // ボタンの上だったらボタンを返す
    
        // それ以外なら自分自身を帰す
        return self
    }
    
[/code]


CC BY-SA 3.0
2016-05-27T10:54:36.103
25226
2016-05-27T10:54:36.103
7459
25063
answer