小编Mod*_*ens的帖子

CALayer在iPhone/iPad上自动调整:如何?

我正在尝试创建一个UIView子类("GradientView"),它将用各种颜色的渐变填充自己.我通过添加CAGradientLayer作为UIView层的子层来实现它.

它看起来不错,但是当屏幕旋转时,它没有调整渐变层的大小.有没有运气的层上找到一个布尔属性来进行切换,我推翻在GradientView layoutSubviews.

-(void)layoutSubviews {
    self.gradientLayer.frame = self.bounds;
}
Run Code Online (Sandbox Code Playgroud)

这很有效,但在设备旋转动画期间,GradientView背后的东西仍然可见.什么是"自动调整大小",这样的动画是光滑的(像UIView的自动尺寸),其CAGradientLayer匹配其父层的边界的最简单的方法?

iphone resize calayer autoresize ipad

21
推荐指数
1
解决办法
1万
查看次数

使用Quartz绘制阴影在iPhone和iPad上很慢.其他方式?

当我发现在iPhone/iPad上为我的UIViews添加阴影是多么容易时,我感到非常兴奋.

只需在Xcode中添加框架,将导入添加到文件顶部:

#import <QuartzCore/QuartzCore.h>
Run Code Online (Sandbox Code Playgroud)

然后呢:

self.contentView.layer.shadowRadius = 3.0;
self.contentView.layer.shadowOffset = CGSizeMake(-2.0, -3.0);
self.contentView.layer.shadowOpacity = 0.5;
self.contentView.layer.shadowColor = [UIColor blackColor].CGColor;
Run Code Online (Sandbox Code Playgroud)

虽然这确实在我的应用程序中创建了一个美丽的阴影,但是当显示视图时它现在也会落后于死...即使在调试器外部启动时也是如此.有没有我忘记的东西,或者这种方法对大型观点不实用?

作为参考,我在这里发布了一个截图.

iphone shadow quartz-graphics uiview ipad

18
推荐指数
2
解决办法
6372
查看次数

标签 统计

ipad ×2

iphone ×2

autoresize ×1

calayer ×1

quartz-graphics ×1

resize ×1

shadow ×1

uiview ×1