[XCODE] UIImageViewでユーザーからの操作を扱いたい
こんにちは、@yoheiMuneです。
今日は、 UIImageViewでユーザーからのタップイベントなどを受け取る方法をブログに残しておきたいと思います
UIImageViewって初期状態では、ユーザーからの動作を無視するようになってるんです。
その設定の変え方です。InterfaceBuilderやソースコード上で、UIImageIViewに以下のような設定を行います。
さらに、複数の指操作に対応したい場合には、以下のように設定を行います。
例えば、以下のような実装が可能となります。
こんな感じに簡単に、UIImageViewでもユーザー操作を扱えます。
気付くとなんともない設定なんですがね(*゚▽゚)ノ
今日は、 UIImageViewでユーザーからのタップイベントなどを受け取る方法をブログに残しておきたいと思います
UIImageViewでユーザー操作を扱う設定
UIImageViewに画像を表示していて、タップされたらさらに何かアクションをするって事をしてみたくて、調べました。UIImageViewって初期状態では、ユーザーからの動作を無視するようになってるんです。
その設定の変え方です。InterfaceBuilderやソースコード上で、UIImageIViewに以下のような設定を行います。
aImageView.userInteractionEnabled = YES;userInteractionEnabledをYESにする事で、ユーザーからのジェスチャーに反応することが出来ます。
さらに、複数の指操作に対応したい場合には、以下のように設定を行います。
aImageView.multipleTouchEnabled = YES;
UIImageViewでユーザー操作を扱う実装例
これら設定で、UIImageViewでもユーザーからの操作に反応することが出来ます。例えば、以下のような実装が可能となります。
UIImageView *imageView = [[UIImageView alloc] initWithImage:anImage]; imageView.userInteractionEnabled = YES; UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAction:)]; [imageView addGesture:tap];上記例では、imageViewがタップされたら、tapAction:というメソッドが呼び出される設定です。
こんな感じに簡単に、UIImageViewでもユーザー操作を扱えます。
最後に
userInteractionEnabledという属性は最初存在すら知らず、泣かされました。気付くとなんともない設定なんですがね(*゚▽゚)ノ