如屏幕截图所示,如何实现应用于整个 View 的圆角(请注意,导航栏和键盘角均是圆角的)?
我尝试为cornerRadius = 10
和masksToBounds = YES
设置window.layer
和window.rootViewController.view.layer
,但是只有底 View 的角变圆了,导航栏仍然保持正方形。
更新。
将cornerRadius
设置为window.layer
实际上也会在顶部添加圆角,但是除非cornerRadius
大于20,否则这些角在状态栏下不可见。
最佳答案
好的,我在Twitter上问过Twittelator Neue的开发人员Andrew Stone,这是他的秘诀,经Andrew许可出版:
因此,这就是我在自己的项目中的操作方式:
UIImage *overlayImg = [UIImage imageNamed:@"overlay.png"];
CALayer *overlay = [CALayer layer];
overlay.frame = CGRectMake(0, 0, overlayImg.size.width, overlayImg.size.height);
overlay.contents = (id)overlayImg.CGImage;
overlay.zPosition = 1;
[self.window.layer addSublayer:overlay];
overlay.png
是带有黑角的透明全屏图像。关于ios - 在整个应用程序中应用圆角,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8735969/