私のイメージが画面の左上から始まり、画面の中央に元のサイズと場所に展開されるUIViewアニメーションを試行しています。今まで私はこれを個別に行うことができましたが、これらのアニメーションを結合しようとすると、スケールアニメーションだけが実行されます。スケールアニメーションと翻訳アニメーションを結合する方法
私はこの作業を行う方法がありますか同時にスケールと翻訳?ここで
は、私がこれまで持っているものです。
CGAffineTransform setpointTrans = CGAffineTransformMakeTranslation(-200.0f, -200.0f);
CGAffineTransform setpointScale = CGAffineTransformMakeScale(0.0f, 0.0f);
_RSEImage.transform = CGAffineTransformConcat(setpointTrans, setpointScale);
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
CGAffineTransform scaleTrans = CGAffineTransformMakeScale(1.0f, 1.0f);
CGAffineTransform lefttorightTrans = CGAffineTransformMakeTranslation(0.0f,0.0f);
_RSEImage.transform = CGAffineTransformConcat(scaleTrans, lefttorightTrans);
[UIView commitAnimations];
[OK]を、私は私が変更するもので、ここで、それを考え出した:
_RSEImage.transform = CGAffineTransformMakeScale(0.0f, 0.0f);
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
CGAffineTransform scaleTrans = CGAffineTransformMakeScale(1.0f, 1.0f);
CGAffineTransform lefttorightTrans = CGAffineTransformMakeTranslation(200.0f,200.0f);
_RSEImage.transform = CGAffineTransformConcat(scaleTrans, lefttorightTrans);
[UIView commitAnimations];
私はあなたのコードを試しました。これはあなたが達成したいと思うものを完全に行います:スケールアップして翻訳してください...このコードの前にあるRESImageの原点は何ですか? – nzs
x 160 y 242、あなたが尋ねていることはそうだと思います。申し訳ありません、これは私の最初のiPhoneアプリです。画像サイズは161 x 71 –
です。基本的にこのコードスニペットが機能しているため、問題が発生している場所からこのコードを読み取るのは難しいですが、これはアフィン変換を「マージ」する方法です。だから私はあなたのコードのいくつかの他の部分はどうにかして翻訳を防ぐか、または表示されないと思います...物事をコメントアウトすることによって徐々に機能を追加し、その時点までにすべてがうまく見えることを確認します。例えば。 0.3fスケールと-100f変換の最初の3行をこのスニペットで確認してください。img? paramsをテストするために翻訳を単独で追加し、スケールでマージします。ブロックが簡単なので、私の答えも使用できます。 – nzs