Attention! Translated article might be found on my English blog.

2016年7月23日土曜日

UIGestureRecognizerがxib上で使えるのはXcode 4.2から

Xcode 4.2以上で作成したxibでUIGestureRecognizerを使っている場合、Xcode 4.1でビルドしようとしたりxibを編集しようとすると
Unable to resolve Interface Builder plug-in dependencies for "MainWindow.xib". Xcode 4 is missing components necessary to load the following classes: IBUITapGestureRecognizer, IBUIPanGestureRecognizer, and IBUIPinchGestureRecognizer. Ensure that Xcode has been properly installed.
というようなエラーが表示される。どうやらxib上でUIGestureRecognizerが使えるようになったのはXcode 4.2かららしい。 4.1以前ではソースコード側でrecognizerを作成/設定していたようだ。その場合は Event Handling Guide for iOS: Gesture RecognizersのListing 1-2 Creating a single tap gesture recognizer programmaticallyを参考にすると良さげ。