2013-07-25 11 views
10

Interface BuilderでCtrlキーを押しながらドラッグしてコントロールのアウトレットを作成すると、コンセントを弱くすることが通常示唆されます。ジェスチャー認識器のアウトレットがデフォルトで強くなる理由

しかし、ジェスチャ認識機能のコンセントを作成する場合は、それを強くすることをお勧めします。私はこれの背後にある理由が何か不思議です、ジェスチャー認識装置のアウトレットを弱くすることに何が間違っていますか?

+0

これは非常に奇妙です。ビューはジェスチャ認識機能を保持しているのと同じ方法でそのサブビューを保持するので、弱いと思うでしょう。 – dasblinkenlight

+1

ref:http://www.raywenderlich.com/forums/viewtopic.php?f = 2&t = 5126 ios 5.0からは、ビューコントローラに追加されたときにジェスチャ認識機能が保持されません。ジェスチャーレコグナイザーは、生き残っていることを保証することができます。それ以外の場合、アプリはクラッシュします。 – prasad

+0

@prasadなぜこれを回答として投稿しませんでしたか?それは完全にupvoteableです。 – dasblinkenlight

答えて

10

REFクラッシュすることに変更した場合:IOS 5.0からhttp://www.raywenderlich.com/forums/viewtopic.php?f=2&t=5126

をビューコントローラに加えられた場合には、ジェスチャー認識装置を保持しません。

強力なプロパティを作成し、それらをジェスチャ認識器に接続することで、それらが生き残っていることを保証することができます。それ以外の場合、アプリがクラッシュします。

Ray WenderlichチームメンバーHollanceにクレジットしました。 https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/#//apple_ref/occ/instm/UIView/addGestureRecognizerから

+0

それで、私がコンセントを全く作成していないと、認識装置が解放され、アプリケーションがクラッシュするでしょう、私は正しいのですか?これはiOS 6で修正されましたか?展開ターゲット6以上でレコグナイザコンセントを弱くすることはできますか? – yurish

+0

はい、展開ターゲット6以上で弱くすることができます。 – prasad

0

UIKitのバグが原因です。あなたが弱いために、それはアプリ

+0

私はこれがこの質問の理由であってはならないと思います。 –

0

:ビューにジェスチャ認識を取り付け

は、タッチそのビューにヒットテストされ、そのサブビューのすべてを受信させ、表現ジェスチャーの範囲を定義します。このビューは、強いジェスチャ認識器への参照を確立します。

関連する問題