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 );
}

当我在MyViewControllerA上执行pushViewController: animated:时:
@implementation MyViewControllerA
    MyViewControllerB  *controller     =   [[MyViewControllerB alloc] initWithNibName:@"MyViewControllerB" bundle:nil];
    [self.navigationController pushViewController:controller animated:YES];

那么过渡根本就不顺利。但是,如果删除了用于绘制阴影的代码块,则过渡照常平滑

您对此问题有任何想法吗?如果您之前曾经历过,请提供帮助
谢谢

最佳答案

指定CALayer shadowPath。苹果公司说:“指定显式路径通常可以提高渲染性能。”

关于objective-c - 在 View 周围绘制阴影会减慢我的过渡速度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13096983/

10-12 00:19
查看更多