0

我有这个简单的代码:

UIView* shadowView = [[UIView alloc] initWithFrame:CGRectMake(0, 30, self.view.frame.size.width, 5)];
shadowView.backgroundColor = [UIColor whiteColor];
shadowView.layer.masksToBounds = NO;
shadowView.layer.shadowOffset = CGSizeMake(0, 0);
shadowView.layer.shadowColor = [[UIColor blackColor] CGColor];
[shadowView.layer setShouldRasterize:YES];
shadowView.layer.shadowOpacity = 1;
[self.view addSubview:shadowView];

这会在顶部和底部创建一个带有阴影的白色视图。两个阴影的方向都很好,从上到下都有渐变。

如果我进行此更改:

shadowView.layer.shadowOffset = CGSizeMake(0, 5);

然后阴影只出现在底部(如我所愿),但渐变以某种方式丢失。我认为顶部与底部渐变重叠。

如何让它只在底部投下阴影?(这是在IOS6下)。

基本上我想创建这个图像:

在此处输入图像描述

4

1 回答 1

0

显然,这只是阴影在 ios6 上的工作方式。问题是我设置了一个偏移量 (0, 5),其中 5 比直线大。在玩了一段时间后,我意识到你可以向下投射阴影,只要你不试图让阴影大于投射阴影的图像。

于 2012-11-12T09:37:36.363 回答