非常に単純なアニメーションを実装する必要があり、そのために Core Animation を使用する必要があります。アニメーションは、ボタンをクリックした後、ビューが 2 秒でフェードインし、10 秒後にフェードアウトしますが、Core Animation でそれを行う方法がわかりません。提案をいただければ幸いです。
質問する
811 次
1 に答える
1
コア アニメーション プログラミング ガイドには、明示的な CABasicAnimation オブジェクトで何をしたいのかについて、非常に優れた基本的な例があります。
theAnimation=[CABasicAnimation animationWithKeyPath:@"opacity"];
theAnimation.duration=2.0;
theAnimation.fromValue=[NSNumber numberWithFloat:0.0];
theAnimation.toValue=[NSNumber numberWithFloat:1.0];
[theLayer addAnimation:theAnimation forKey:@"animateOpacity"];
10 秒の遅延が必要な限り、GCD を使用して 10 秒待機し、まったく同じことを逆に実行できます。
dispatch_time_t time = dispatch_time(DISPATCH_TIME_NOW, 10000000000); // 10 seconds
dispatch_after(time, dispatch_get_main_queue(), ^()
{
// Same thing, but with the fromValue/toValue reversed
});
**編集: fromValue/toValue 値を修正
于 2013-03-06T00:45:40.377 に答える