मैं UIView में कैलियर जोड़ने का कुछ सरल परीक्षण कर रहा हूं। एक iPhone 4 अनुप्रयोग के अपने मुख्य नियंत्रक वर्ग में, मैं इस तरह के रूप viewDidLoad
पद्धति लागू:आईओएस: self.view.bounds पूरे विंडो को भरता नहीं है
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"%s", __PRETTY_FUNCTION__);
CALayer* ca = [[CALayer alloc] init];
[ca setBounds:self.view.bounds];
[ca setBackgroundColor:[[UIColor blueColor] CGColor]];
[self.view.layer addSublayer:ca];
}
नीले रंग की पृष्ठभूमि केवल कब्जा स्क्रीन के 1/4।
मुझे आश्चर्य है कि अगर यह होता है, क्योंकि मैं ध्यान में रेटिना प्रदर्शन नहीं लिया? इस स्थिति में सबसे अच्छा अभ्यास क्या है?
जोड़ी इन डीबग संदेश:
NSLog(@"frame w:%f h:%f", self.view.frame.size.width, self.view.frame.size.height);
NSLog(@"bounds w:%f h:%f", self.view.bounds.size.width, self.view.bounds.size.height);
आउटपुट:
frame w:320.000000 h:460.000000
bounds w:320.000000 h:460.000000
'self.view.frame' का मूल्य क्या है? क्या आप सत्यापित कर सकते हैं –
@ दीपक: यह {चौड़ाई: 320, ऊंचाई: 460} है। प्रश्न में डीबग आउटपुट भी जोड़ा गया। –