のAppleガイドは次のようにisEqual
述べています。
受信者と指定されたオブジェクトが等しいかどうかを示すブール値を返します。(必要)
このメソッドは、インスタンスが等しいことの意味を定義します。たとえば、コンテナオブジェクトは、対応するオブジェクトがすべて
isEqual:
リクエストに対してYESと応答する場合、2つのコンテナを等しいと定義する場合があります。このメソッドの使用例については、NSData、NSDictionary、NSArray、およびNSStringクラスの仕様を参照してください。2つのオブジェクトが等しい場合、それらは同じハッシュ値を持っている必要があります。この最後の点は、サブクラスで:を定義
isEqual
し、そのサブクラスのインスタンスをコレクションに入れる場合に特に重要です。サブクラスでもハッシュを定義していることを確認してください。
だから私の質問は、を使用して2つのUIButtonまたは2つのUILabel(2つのUIView)を比較するかどうかです。isEqual
事前に、それらのクラスが同じクラスであるかどうかを確認してから、を呼び出しisEqual
ます。何が確認されますか?プロパティ、値、アクションメッセージ、ターゲットオブジェクトがチェックされていますか?
ありがとう