タッチしたら・・の書き方。

アプリ作ってて、ある view をタッチしたら・・・というのを検出する話。

いつもは、対象となる uiview の sub class を作って、delegate を通して、あーめんどくセー・・・という流れだったのですが、今日、こんな書き方を知った。

 

-  (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch* touch = [touches anyObject];
    if ( [event touchesForView:self.moviePreview] ) // こういうやり方もあるのね
    {
        NSLog(@"moview preview がタッチされました。");
    }
}
 
event から touch した view を取れるのね。
これで、sub class 作って delegate 設定してとかしなくていいんでよかった。