1

図に示すように、2 つの imageView が並んでいます。ここに画像の説明を入力

スライド ビューとして繰り返しアニメーション化することで、これらの画像を変更する必要があります。私はNSTimerを使ってこれをやっています。

以下は、アニメーションの作成に使用しているコードです。

CATransition *animation = [CATransition animation];
[animation setDuration:1];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromRight];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear]] ;

[[imgVwTry layer] addAnimation:animation forKey:@"@asdf"];

ただし、Left ImageView のアニメーションは、イメージ ビューの境界外から開始されます。同じことが次の図に示されています。

ここに画像の説明を入力

より明確な方法で説明しましょう:

発生しているアニメーションが右の ImageView と重なっています。ただし、LeftImageView に指定されている領域でのみアニメーションが発生するようにします。このようなもの: ここに画像の説明を入力

アニメーション コードにどのような変更を加える必要がありますか。オーバーラップを削除できます。または、画像をアニメーション化できる他の方法はありますか?

もう 1 つ簡単な質問ですが、UIImageView の startAnimation メソッドを使用する場合、アニメーションをスライド アニメーションに変更できますか?

4

1 に答える 1

1

話している画像を保持するスーパービューで clipsToBounds を YES に設定する必要があります。これにより、フレームの境界に入るまでサブビューが表示されなくなります。

于 2013-02-21T13:16:05.977 に答える