我使用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