2012-10-13 2 views
85

필자의 시야가 주어진 CGRect와 동일한 지 확인해야했습니다. 나는 이런 식으로 그 일을 시도 :2 개의 CGRect 비교하기

CGRect rect = CGRectMake(20, 20, 20, 20); 
if (self.view.frame == rect) 
{ 
    // do some stuff 
} 

그러나, 나는 Invalid operands to binary expression('CGRect' (aka 'struct CGRect') and 'CGRect')를 말하는 오류가 발생했습니다. 왜 내가 단순히 CGRect 두 개를 비교할 수 없습니까?

답변

217

사용이 : 스위프트 3에서

if (CGRectEqualToRect(self.view.frame, rect)) { 
    // do some stuff 
} 
+7

1 위와 –

+0

한 동일. – ManicMonkOnMac

39

CGRectEqualToRect()의 경우 the documentation을 참조하십시오.

bool CGRectEqualToRect (CGRect rect1, CGRect rect2); 
4

은은 다음과 같습니다보다 구체적인 답변을

frame1.equalTo(frame2) 
+1

또는 좋은 ol ''=='연산자를 사용하십시오. –