@property (assign) CGRect rect;
CGrect
एक struct, न कि एक NSObject
है, इसलिए आप इसे (retain
की तरह) के लिए संदेश नहीं भेज सकते।
पूर्ण सेटअप तो हो जाएगा हों तो वहां की तरह:
// MyClass.h
@interface MyClass : NSObject
{
CGRect _rect;
}
@property (assign) CGRect rect;
और
// MyClass.m
@implementation MyClass
@synthesize rect=_rect;
@end
तो बुनियादी तौर पर आप तो कुछ ऐसा कर सकते हैं:
MyClass *myClass = [[MyClass alloc] init];
myClass.rect = CGRectMake(0,0,0,0);
synthesize निर्देश मूल रूप से "दृश्यों के पीछे" आपके लिए दो तरीकों (गेटर/सेटर) बनाता है; कुछ ...
- (CGRect)rect;
- (void)setRect:(CGRect)value;
मैं आमतौर पर अपने उदाहरण वर्रों में "_" जोड़ता हूं। rect=_rect
जब भी रेक्ट संपत्ति "कॉल" होती है, तो सही उदाहरण var को संशोधित करने के लिए कंपाइलर को बता रहा है।
these tutorials on Theocaco के माध्यम से पढ़ा है। वह बताता है कि दृश्यों के पीछे @ सिंथेसाइज (आर) क्या कर रहा है।
धन्यवाद। क्या मुझे कोड में फ़ील्ड द्वारा फ़ील्ड असाइन करने की अपनी सेटिंग की आवश्यकता है? –
@ डेविड: यदि यह सीजीआरईटी है, फ़ील्ड द्वारा फ़ील्ड असाइन करना 'memcpy' के बराबर है। – kennytm
आप रेक्ट कैसे सेट करते हैं ... यह मुझे भ्रमित कर रहा है – Morkrom