1

我有一个 UIView 的一部分,我添加了一个掩码来使用:

-(void)viewDidLoad{

    CALayer* maskLayer = [CALayer layer];
    maskLayer.contents = (__bridge id)[[UIImage imageNamed:@"mask.png"] CGImage];

    self.myView.layer.mask = maskLayer;
}

我的问题是,当我按下主页按钮后返回应用程序时,当应用程序从背景状态开始动画时,蒙版区域会短暂显示。

据我了解,这是因为 iOS 会捕获应用程序状态的图像来显示此动画,而蒙版层没有被捕获?(我之前在以编程方式捕获我的应用程序的快照时遇到过这个问题)

有没有更好的地方可以戴口罩,或者有更好的遮盖方法来纠正这个问题?

4

1 回答 1

0

当应用程序来自后台时,它将调用 AppDelegate 的以下方法

- (void)applicationWillEnterForeground:(UIApplication *)application

解决方案

  • 在上述方法中添加图层动画代码(applicationWillEnterForeground)。
    或者
  • 添加将调用您的动画方法的选择器或 NSNotificationCenter。


这适用于应用程序的任何视图控制器,如果您希望它用于特定视图检查当前可见视图控制器。

于 2013-04-23T12:06:27.547 回答