UIView內(nèi)部會自動創(chuàng)建一個圖層就是CALayer對象,通過UIView的layer屬性可以訪問到這個層嵌戈;當(dāng)UIView需要顯示到屏幕上,會調(diào)用drawRect: 方法進(jìn)行繪圖,并且會將所有內(nèi)容繪制在自己的圖層上郭怪,繪圖完畢后,系統(tǒng)會將圖層拷貝到屏幕上刊橘,于是就完成了UIView的顯示鄙才;
- (void)myRedView
{
RedView *red = [[RedView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];
red.backgroundColor = [UIColor whiteColor];
red.layer.cornerRadius = 50;
red.layer.borderWidth = 5;
red.layer.borderColor = [UIColor orangeColor].CGColor;
red.layer.contents = (id)[UIImage imageNamed:@"=0"].CGImage;
red.layer.masksToBounds = YES;
red.layer.shadowColor = [UIColor blackColor].CGColor;
red.layer.shadowOffset = CGSizeMake(20, 15);
red.layer.shadowOpacity = 0.5;
[self.view addSubview:red];
}