UIWebViewの画面がタップされたことを検知しようとしたところ、UIWebViewは内部にUIScrollViewを持ち、さらに実際の描画はそのsubviewが行うため、UIWebViewのサブクラスにイベントを受け取るメソッド(-touchesBegan:withEvent:等)をオーバライドしても呼ばれません。 この場合、hitTestを利用すると画面タップを検知することができます。 - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event { //必要であればevantをチェック //superのメソッド呼び出し前後で処理を行う。 UIView *v = [super hitTest:point withEvent:event]; //vは実際にイベントに応答するオブジェクト。イベントを横取りするのでなければvを
![UIWebViewの画面タップトラップ](https://cdn-ak-scissors.b.st-hatena.com/image/square/98b20426b0ffaf5a32e3e070c437310e2cbf4c87/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEh-bBy-SMy9EJCMzW6xesUrXt-6cBXwNZv8vFVIGSTicyOEpTza4PCEcVFD2YNJX9rJXhyphenhyphen3SvnOEXwx5z8FRW1XOzmGKrMY6TFQTdqdGGucwuePPHde5Qbx06UYAYiX7AE1-Vu6fQeXpQ%2Fw1200-h630-p-k-no-nu%2Fbanner.png)