我看过很多代码片段,但都过于复杂,对于简单的阴影效果而言,需要子类化UIView并使用quartz2d调用,或者我无法使它们起作用。我想在将其作为子视图添加到另一个视图上时(子视图来自我正在分配的另一个viewController - 我知道这可能不好,但没关系),只是想在该视图上执行此操作,不需要使用IB或任何东西。最简单/最常用的方法是什么?如果我希望它在iOS 4上运行,会有所不同吗?
只需要导入<QuartzCore/QuartzCore.h>
,并使用以下类似的片段即可:
self.viewAboutContainer.layer.shadowColor = [[UIColor blackColor] CGColor];
self.viewAboutContainer.layer.shadowOpacity = 0.7;
self.viewAboutContainer.layer.shadowRadius = 4.0;
self.viewAboutContainer.layer.shadowOffset = CGSizeMake(5.0f, 5.0f);
self.viewAboutContainer.layer.shadowPath = [UIBezierPath bezierPathWithRect:self.viewAboutContainer.bounds].CGPath;
clipsToBounds = NO
。 - Hemang