iphone - 为重叠的 UI 对象绘制阴影

标签 iphone ios core-graphics quartz-graphics

我有一个 UIImageView 和一个 UIButton 部分重叠。我希望用户将图像和按钮视为一个连接的对象。当我尝试使用 QuartzCore 给它们添加阴影时:

image.layer.shadowOffset = CGSizeMake(5,5); Button.layer.shadowOffset = CGSizeMake(5,5);

按钮的阴影将部分落在图像上。我希望按钮阴影仅落在图像外部的部分。类似于两个矩形的并集。帮助将不胜感激!

谢谢

狮子座

最佳答案

UIImageViewUIButton 放入父 View 中。在父 View 上设置阴影。确保父 View 不是不透明的并且具有透明的背景色:

- (void)viewDidLoad {
    [super viewDidLoad];
    self.shadowView.backgroundColor = [UIColor clearColor];
    self.shadowView.opaque = NO;
    self.shadowView.layer.shadowOffset = CGSizeMake(5, 5);
    self.shadowView.layer.shadowColor = [UIColor blackColor].CGColor;
    self.shadowView.layer.shadowOpacity = 1.0;
}

关于iphone - 为重叠的 UI 对象绘制阴影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8936344/

相关文章:

iOS/iPhone 可达性 - 如何仅在互联网丢失/无法使用 Reachability.m/.h 时检查

ios - NSMutableArray 与 UITableView

ios - Pdf - MediaBox 或 CropBox

javascript - 在 iphone 的 webview 上自动显示键盘到下一个输入文本

ios - iPhone 6S 和 iPhone 6S Plus 的平台字符串是什么?

ios - UITableView 不读取数组

macos - CGImage.裁剪(到:) is flipped on OS X

objective-c - 在 iOS 中将 PDF 文本写入 PDFContext

ios - 使用 GTMOAuth2ViewControllerTouch 进​​行身份验证时执行 moments.insert

ios - 如何比较两个数组并通过swift获取不同的元素