Posted at

UIView(とそれを継承したView)に影をつけたい時

More than 5 years have passed since last update.

CALayerを使うことで、ビューに影をつけることが出来ます。

各プロパティの値を変えると、描画される影が変化します。


CALayerSample


- (void)shadowSample{
UIView *uiView = [[UIView alloc] initWithFrame:CGRectMake(110, 200, 100, 100)];
uiView.backgroundColor = [UIColor whiteColor];
CALayer *caLayer = uiView.layer;
caLayer.rasterizationScale = [[UIScreen mainScreen] scale];
caLayer.shadowRadius = 3.0f;
caLayer.shadowOpacity = 1.5f;
caLayer.shadowOffset = CGSizeMake(0.0f, 1.0f);
caLayer.shouldRasterize = YES;
[self.view addSubview:uiView];
}


影をつけない場合             影をつけた場合

影無し 影有り