绘制阴影周围景色减慢我的转变,CALayer的,IOS(drawing shadow around

2019-10-17 08:41发布

MyViewControllerB.xib包含

view( UIView )
  |
  |__image (UIImageView)
  |
  |__view (UIView)
  |
  |__text (UITextView)
  |
  |__view (UIView) ( shadow is adding at here )

然后,我在底部添加视图四周阴影如下

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self.bottomView.layer setMasksToBounds:NO];
    self.bottomView.layer.shadowColor   =   [UIColor blackColor].CGColor;
    self.bottomView.layer.shadowRadius  =   5;
    self.bottomView.layer.shadowOpacity =   1;
    self.bottomView.layer.shadowOffset  =   CGSizeMake(0  , 0 );
}

当我做pushViewController: animated:在MyViewControllerA:

@implementation MyViewControllerA
    MyViewControllerB  *controller     =   [[MyViewControllerB alloc] initWithNibName:@"MyViewControllerB" bundle:nil];
    [self.navigationController pushViewController:controller animated:YES];

然后过渡不顺利的。 然而,如果除去用于绘制阴影码的块中,过渡是平滑的如常

你有关于这个问题的任何想法。 请帮助,如果你之前由于经历过

Answer 1:

指定的CALayer shadowPath 。 苹果公司表示,“指定明确的路径通常会提高渲染性能。”



Answer 2:

如果乔恩的建议不工作,你可以尝试以你的观点UIImage的快照和动画过程中使用它们。 我们这样做的一个项目 - 把一个UIImageView在实际视图,然后在动画的最后删除它。 阴影是iOS上的慢。



Answer 3:

你可以告诉CALayer的栅格化的影子。



文章来源: drawing shadow around a view slows down my transition,CALayer,ios