8

我想在动画完成后运行一段代码,但编译器显示以下错误:“不兼容的块指针类型将'void (^)(void)'发送到'void (^)(BOOL)'类型的参数”

这是我的代码,我不确定我做错了什么,请帮助,谢谢。

[UIView transitionWithView:self.view duration:1.5
                   options:UIViewAnimationOptionTransitionFlipFromBottom //change to whatever animation you like
                animations:^ {
                    [self.view addSubview:myImageView1];
                    [self.view addSubview:myImageView2];
                }
                completion:^ {
                    NSLog(@"Animations completed.");
                    // do something...
                }];
4

1 回答 1

14

你只是有错误的块类型:) 它需要一个像下面这样的块。关键是^(BOOL finished) {...}

[UIView transitionWithView:self.view duration:1.5
                   options:UIViewAnimationOptionTransitionFlipFromBottom //change to whatever animation you like
                animations:^ {
                    [self.view addSubview:myImageView1];
                    [self.view addSubview:myImageView2];
                }
                completion:^(BOOL finished){
                    if (finished) {
                        // Successful
                    }
                    NSLog(@"Animations completed.");
                    // do something...
                }];
于 2013-01-18T19:41:09.550 回答