设备方向时阴影出错

时间:2012-09-23 11:39:17

标签: ios rotation calayer

我正在为视图添加阴影(包括shadowPath以便性能更好),如下所示:

CALayer *layer=aView.layer;
layer.shadowColor=[UIColor blackColor].CGColor;
layer.shadowOpacity=0.8f;
layer.shadowOffset=CGSizeMake(4.0f,4.0f);
layer.shadowRadius=6.0f;
layer.masksToBounds=NO;
layer.shouldRasterize=YES;
layer.shadowPath=[UIBezierPath bezierPathWithRect:aView.bounds].CGPath; 

但是当旋转设备并且视图框改变时阴影出错(长距离偏移等)

我尝试在layoutSubviews方法中重新设置阴影,但在旋转期间,您可以看到阴影在屏幕上移动。

在旋转过程中处理阴影路径的正确方法是什么?

(作为最后的手段,我正在移除阴影,然后在旋转之后将其放回去,但它很笨重,然后我的视图必须告知其控制器完成设备方向:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation

有没有更好的方法让VIEW知道轮换已完成?)

0 个答案:

没有答案