0

私のアプリケーションはiphoneシミュレーターで問題なく動作していましたが、iphone 4(ios 5.1)で実行すると、一部のビューのアニメーションが流暢にならず、ときどき動作しなくなります。以下のコードを使用していますが、ここで問題が発生する可能性がありますか?

- (void)moveAnimatedToPoint:(CGPoint)point after:(float)delay during:(CGFloat)duration willRemove:(BOOL)remove
{
    [UIView animateWithDuration:duration
                          delay:delay
                        options:UIViewAnimationCurveEaseOut
                     animations:^{
                         self.frame = CGRectMake(point.x, point.y,
                                                 CGRectGetWidth(self.frame), CGRectGetHeight(self.frame));
                     } completion:^(BOOL finished) {
                         if (finished) {
                             if (remove)
                                 [self removeFromSuperview];
                             else {
                                 isHided = CGRectContainsRect(self.superview.frame, self.frame) ? NO : YES;
                             }
                         }
                     }];
}
4

2 に答える 2

0

解決策は以下のリンクで非常によく説明されています。私のビューにはシャドウレイヤーがあり、トランジションアニメーションが遅くなります。

http://mobileoverlord.com/instruments-optimizing-core-animation/

于 2012-08-14T21:24:39.100 に答える
-1

シミュレーター以外の現実の世界へようこそ:)。

アニメーション(サイズ、メモリ要件など)、デバイスのメモリ、デバイスのアクティブなタスクなどに応じて、これは単純に発生する可能性があります;)。

于 2012-08-14T09:13:17.283 に答える