2016-07-25 6 views
2

私はtvOSアプリケーションを開発中です。UIViewAnimationOptions.CurveEaseInがコーディネートされたアニメーション内で動作しない

私のアプリケーションでは、UICollectionViewがあります。私はコーディネートされたアニメーションを使っています。そのアニメーションの中に、私はこのコードを持っている:

UIView.animateWithDuration(1.0, delay: 0.0, options: UIViewAnimationOptions.CurveEaseIn, animations: { 
        self.bg.image = finalImage 
        self.bg.alpha = 1.0 
        }, completion: nil) 

をしかし、それはそのがcurveEaseInアニメーションオプションを使用していないように思えます。

アルファが鈍く変化します。これは奇妙です。どこが間違っていますか?

+0

ように調整されたアニメーションの完了にImageViewのをアニメーションでした

利回り良い結果を行っていません。 – beyowulf

答えて

0

どのような効果がありますか?あなたは新しい画像でフェードbg.imageをクロスしようとしていますか?アニメーションが速すぎるかどうかを確認するために、継続時間を何か高い値に変更しようとしましたか?たとえば10.0

let myImageView = UIImageView() 
let myFinalImage = UIImage(named:"FinalImage.png") 

// Animate alpha 
UIView.animateWithDuration(1.0, delay: 0.0, options: .CurveEaseIn, animations: { 
    print("alpha animation started") 
    myImageView.alpha = 0.0 
    }) { (finished) in 
     print("alpha animation finished") 
} 

// Animate change of image 
UIView.transitionWithView(myImageView, duration: 1.0, options: .TransitionCrossDissolve, animations: { 
    print("cross dissolve animation started") 
    myImageView.image = myFinalImage 
    }) { (finished) in 
     print("cross dissolve animation finished") 
} 
0

申し訳ありません:

は、ここであなたが探してすることができるものの例です。答えを投稿するのを忘れました。私は別のアニメーションブロック内のアニメーションブロックを配置し、この

self.bg.alpha = 0.0 
    coordinator.addCoordinatedAnimations({ //code for coordinated animation}, completion: { _ in 

       UIView.animateWithDuration(1.0, delay: 0.0, options: UIViewAnimationOptions.CurveEaseIn, animations: { 
        self.bg.image = self.finalImage 
        self.bg.alpha = 1.0 
        }, completion: nil)}) 
+0

'UIViewAnimationOptions.CurveEaseIn'を' .CurveEaseIn'だけで置き換えることができます。 –

関連する問題