0

プロジェクトのコーディングはほぼ完了しましたが、フェージングに関する 1 ~ 2 個の問題に遭遇しました。ここに私のコードがどのように見えるかがあります

CATransition *animation = [CATransition animation];
[animation setDuration:0.5];
[animation setType:kCATransitionFade];
[animation setSubtype:kCATransitionFromRight, kCATransitionFromLeft];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];

サブタイプを設定するように言っています。私は基本的に前後にアニメーション化したいと思っています。私はかなり近いことを知っています。コードから他に何が欠けていますか?

4

2 に答える 2

1

の代わりに中括弧を使用できる遷移の例から、正しい中括弧に注意してください:{括弧の代わりにタイプとサブタイプを囲んでいます: [:

NSString *types[4] = {kCATransitionMoveIn, 
    kCATransitionPush, kCATransitionReveal, kCATransitionFade};
NSString *subtypes[4] = {kCATransitionFromLeft, 
    kCATransitionFromRight, kCATransitionFromTop, kCATransitionFromBottom};
于 2011-06-21T11:36:43.017 に答える
1

私が知る限り、引数-setSubtype:は 1 つです。NSString*

この線:

[animation setSubtype:kCATransitionFromRight, kCATransitionFromLeft];

おそらく次のいずれかである必要があります。

[animation setSubtype:kCATransitionFromRight];

また:

[animation setSubtype:kCATransitionFromLeft];

編集:追加することもできます:

[[myView layer] addAnimation:animation forKey:@"transitionFromRight"];

myViewオブジェクト (UIViewまたはサブクラス)のアニメーション化を開始します。

于 2009-09-09T23:09:56.937 に答える