我使用How do I draw a shadow under a UIView?中描述的方法在视图内容后面绘制阴影。虽然我在界面生成器中为视图禁用了“剪辑子视图”,但阴影被剪裁到视图的边界。是否有可能在附近画一个一个视图,而不是在一个视图?如何在UIView的边界之外绘制阴影?
我不想在视图内绘制阴影,因为视图会接收到阴影区域的触摸事件,这些事件真的属于背景。
我使用How do I draw a shadow under a UIView?中描述的方法在视图内容后面绘制阴影。虽然我在界面生成器中为视图禁用了“剪辑子视图”,但阴影被剪裁到视图的边界。是否有可能在附近画一个一个视图,而不是在一个视图?如何在UIView的边界之外绘制阴影?
我不想在视图内绘制阴影,因为视图会接收到阴影区域的触摸事件,这些事件真的属于背景。
它不鼓励吸引外界视图边界的方法是如何可能的。也许你可以直接包含的阴影你的背景...
问候,
clipsToBounds只控制视图的子视图的裁剪,不控制视图本身;因此它不能解决你的问题。
如果您可以将您的阴影绘制到不同的视图上,并将其添加为小孩,则不会被剪裁。但是,我不知道是你使用:(
代替在的drawRect手工绘图,考虑用于绘制阴影设置了UIView的核心动画层上性能
,例如:
[descriptionInput setClipsToBounds:NO];
[descriptionInput.layer setShadowColor:[[UIColor blackColor] CGColor]];
[descriptionInput.layer setShadowOpacity:0.8];
[descriptionInput.layer setShadowOffset:CGSizeMake(0.0, 3.0)];
对于这个工作,你需要包括QuartzCore:
#import <QuartzCore/QuartzCore.h>
为什么不鼓励吸引外界看来界限?在出现阴影的情况下,具体是什么原因? – 2012-10-16 09:56:49
它会导致性能问题,因为在两层之间混合颜色,背景层和阴影层,其CPU密集型。 https://stackoverflow.com/a/36794256/1348121 – 2017-08-30 10:31:54