UIImageViewで行われるアニメーション全体をマスクする必要があります。UIImageViewをサブクラス化し、drawRect呼び出しでマスキングを実行しようとしましたが、アニメーションが正常に再生されても、アニメーションのすべてのフレームで期待どおりに呼び出されません(実際にはまったく呼び出されません)。
誰かがこれについて何か経験がありますか?
UIImageViewで行われるアニメーション全体をマスクする必要があります。UIImageViewをサブクラス化し、drawRect呼び出しでマスキングを実行しようとしましたが、アニメーションが正常に再生されても、アニメーションのすべてのフレームで期待どおりに呼び出されません(実際にはまったく呼び出されません)。
誰かがこれについて何か経験がありますか?
CIFilter
iPhone OS には公開 API がないため、 または を使用して合成を行う方法はありませUIView
んCALayer
。
つまり、答えは次のとおりですUIImageView
。アニメーション化されているかどうかにかかわらず、コンテンツをマスクすることはできません。
CIFilter
API の追加は Cocoa Touch の大きな機能強化であり、UIView/CALayer ベースの UI デザインの可能性を大きく広げると感じたので、レーダー バグ リクエストを提出しました。現時点では、iPhone で合成を行いたい場合は、Quartz (遅い) または OpenGL (すべて自分で行う) を使用する必要があります。
iPhone OS の CIFilters の有用性に同意する場合は、 レーダーにリクエストを提出することを検討してください。要求が多ければ多いほど、Apple はそれを気にするようになります。