3

この理由によるアプリケーションのクラッシュ-[NSConcreteValue doubleValue]: unrecognized selector sent to

次のコードは私のプロジェクトで使用されており、非常に検索して変換による理由がわかりましたが、transform.scaleをそれに置き換えると、アニメーションが変更されて助けになりました!

[viewContent.layer addAnimation:[self getShakeAnimation] forKey:@"transform.scale"];

- (CAAnimation*)getShakeAnimation 
{ 
    CAKeyframeAnimation *animation = [CAKeyframeAnimation animation];

    animation.values = [NSArray arrayWithObjects:
                        [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI_2, 0.0f, 1.0f, 0.0f)],
                        [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.0f, 0.0f, 0.0f)],
                        [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI * 2, 0.0f, 1.0f, 0.0f)],nil];

 animation.duration = 0.8f;
 animation.delegate = self;


    return animation;
}
4

1 に答える 1

6

キーパスtransform.scale(a ) のアニメーションを追加していますが、 sfloatを渡しています。CATransform3Dキーパスまたは入力を修正する必要があります。

于 2012-10-02T09:04:28.583 に答える