UITableViewでカスタムセル使用時の高速化
iOS開発においてUITableViewでカスタムセルを使用した場合の高速化について質問です。
カスタムセルはFacebookのタイムラインでいう写真のように、動的に表示が切り替わる箇所が4箇所ほど存在しています。
また当該カスタムセルにはAutoLayoutを使用しています。
現状、検索して把握している処置として以下のようなことは検証済みです。(セルの再利用など当たり前のことは割愛)
- 透過を使用しない
- 高さをキャッシュする
- 画像の加工等は別スレッドで行う
ベンチマークを取ると動的に要素を表示したり非表示にするところで重たくなっており、上記のようなことは積み重ねると多少効果はあるのですが、大勢に影響なしという状況です。
(必ずしもそうではないのですが傾向として、非表示→非表示→表示といった場合、3度目の表示が切り替わる場面でとりわけ時間がかかっています)
ちなみにAutoLayoutではなくプログラムでViewを生成することも検証しましたが、やはり同じ箇所で動作が重たくなってしまいます。
他社様のアプリを見るとカスタムセルを使用しているであろう場面で、私と同様にカクつくものもあれば、FacebookやTwitterのように動的な要素ながら驚くほどスムーズに動くものもあります。
後者のように動的なセルでも滑らかに動作させたいのですが、どのようなアプローチを取れば可能になるのでしょうか。ご存じの方がいらっしゃれば、ご教示ください。