2012-10-13 28 views
85

मुझे गीलेर की जांच करने की आवश्यकता है मेरे दृश्य का फ्रेम किसी दिए गए सीजीआरईटी के बराबर है। मैं इस तरह कर रही है की कोशिश की है कि:दो सीजीआरईटी की तुलना

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

इस का उपयोग करें:

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

अधिक ठोस जवाब के लिए +1 ऊपर के रूप में –

+0

+1 ही। – ManicMonkOnMac

39

CGRectEqualToRect() के लिए the documentation देखें।

bool CGRectEqualToRect (CGRect rect1, CGRect rect2); 
4

स्विफ्ट 3 में यह होगा:

frame1.equalTo(frame2) 
+1

या अच्छे ol ''==' ऑपरेटर का उपयोग कर। –

संबंधित मुद्दे