2012-01-24 4 views
0

drawRectを使用して描画するUIViewがあります。私はコアグラフィックスを使用し、ベジェ曲線を描画します。私はいくつかの場面で描画されたベジェ曲線の色を変更するアニメーションを持っていたいと思います。しかし、プロパティとしての色を持ち、それをアニメーションブロックで変更するだけでは機能しません。また、正しく再描画されるようにする必要があります。これを行う方法は何ですか?私はIOSにかなり新しいですブロックアニメーションを使用してカスタム描画されたUIViewの色を変更します。

+0

github(https://github.com/neror/CA360)と次のプレゼンテーションでCA360プロジェクトが見つかりました:http://www.slideshare.net/alexisgo1/animation-talkコアアニメーションを使わなければならないようです。しかし、アニメーション可能なプロパティと同じ簡単な方法でブロックを使用してアニメーション化できるカスタムプロパティを作成できるかどうか(またどのように)を知りたいですか。 – Nils

答えて

1

私はあなたがしようとしていることをすることはできないと思います。システムには、アニメーション可能なプロパティの変更をアニメートする方法を知っている特別なコードがありますが、他のプロパティのアニメーション化の変更はサポートしていません。

色の変化をアニメーション化するには、図面を作成するためにCAShapeLayerを使用する必要があります。シェイプレイヤーのstrokeColorおよびfillColorプロパティはアニメーション可能です。

+0

独自のアニメーション可能なプロパティを作成することはできますが、この場合、CAShapeLayerは良い解決策なので、残高は+1です。 – jrturton