Руководство компании Apple для isEqual
говорит:Что такое проверка в isEqual?
Возвращает логическое значение, указывающее, является ли приемник и данный объект равны. (обязательно)
Этот метод определяет, что означает, что экземпляры равны. Например, для примера объект-контейнер может определять два контейнера равными, если все соответствующие им объекты отвечают YES на запрос
isEqual:
. См. Спецификации NSData, NSDictionary, NSArray и NSString для примеров использования этого метода.Если два объекта равны, они должны иметь одинаковое значение хэш-функции. Этот последний момент особенно важен, если вы определяете
isEqual
: в подклассе и намерены поместить экземпляры этого подкласса в коллекцию . Убедитесь, что вы также определили хэш в своем подклассе.
Так что мой вопрос, если я хочу, чтобы сравнить два UIButtons или два UILabels (два UIViews) с использованием isEqual
, и заранее я проверил, если их классы и тот же класс, а затем вызвать isEqual
, что становится проверяется? являются ли свойства, значения, сообщения действий, целевые объекты проверяются?
Благодаря
isEqual, вероятно, не является подходящим вариантом для чего-то сложного, как вид. Можете ли вы сказать, что вы на самом деле пытаетесь сделать, а не как вы в настоящее время пытаетесь это сделать? – jrturton
Я хочу сравнить, если оба представления одинаковы, поэтому я проверяю все подпункты и один за другим. Я хочу, чтобы они отображали их свойства, например. если есть uibuttons и uilabels, я хочу сравнить их в этом представлении, а другой вид –