独自のサブクラスをUIImage
作成して、4つの側面のそれぞれにキャップを付けた実現可能/ストレッチ可能な画像を作成できるようにしたいと思います。
iOS 5resizableImage
は、中央部分を伸ばすことができないため、私のニーズに合いませんstretchableImage
。また、ある種のグラデーションを繰り返したい場合でも、1ピクセルしか繰り返すことができないため、現在は非推奨になっています。
これまでのところ、すべてが正常に機能しています。独自の描画コードを実装しまし-drawInRect:
たが、期待どおりに動作します。
ただし、カスタムサブクラスインスタンスをUIImageView
のイメージとして割り当てると、コードが壊れます。画像は通常のUIImageと同じようにレンダリングされます。(キャップなしですべての方向にスケーリング)
4つの描画メソッドすべてにブレークポイントを設定しようとしました(drawInRect
、、drawAtPoint
スタンドアロンとwithの両方blendMode:
がありますが、呼び出されないようです。
サブクラス化せずUIImage
にで使用するときにカスタム描画コードを提供する方法もありますか?UIImageView
UIImageView
また、パフォーマンスが気になります。デフォルトの伸縮可能な画像はアニメーション中に非常にうまく機能しますが、のサイズプロパティ(幅と高さ)をアニメーション化するとどうなるのでしょうかUIImageView
。レンダリングコードはフレームごとに呼び出されますか?