パフォーマンスを向上させるために、iOS でレイヤーのブレンドを回避しようとしています。ただし、私が使用しているサイズ変更可能な画像が、ブレンドされたレイヤーとしてマークされていることbackgroundView
に気付きました。UITableViewCell
実際、透明度のない JPEG であっても、サイズ変更可能な画像を使用すると、このスクリーンショットに見られるように、最初に PNG が使用され、次に JPEG がUIImageView
. ブレンドされたレイヤーを必要としない唯一のサイズ変更可能な画像は、下部に表示されている 1x1 ピクセルの画像でした。
これを回避する方法はありますか?コア アニメーションのプロファイリングは (少なくとも私にとっては) 不正確な芸術ですが、テーブル ビューをスクロールするときに約 25 FPS に低下する主な要因だと思います。
Edit2: さらに実験を行ったところ、画像 (PNG または JPG) を垂直方向または水平方向にのみ引き伸ばすと、ブレンドされたレイヤーとしてマークされないことがわかりました。ただし、さらに実験を重ねると、これは、1 次元にのみ引き伸ばされた画像が小さくなるためであると考えられます。画像が 100x100 ではブレンドされていませんが、150x100 ではブレンドされています。