Qiita初投稿です!
iOSアプリ開発をしていると、UITableViewをかなり高頻度で使います。
今日はこのUITableViewを、より滑らかにスクロールできるように改善する方法を紹介します。
画像のキャッシュで滑らかに
スクロールがガクつく原因は色々考えられますが、セルに表示する画像のダウンロードに時間がかかって処理が重くなっているケースが多いです。
今回、同じ様に画像表示でアプリが重くなってしまった際にKingFisherというライブラリを使うことで、超簡単に画像をキャッシュしてサクサク動くようになりました。
UITableViewなどのアプリ内で、複数の画像を使う方にはオススメのライブラリです。
インストール
Cocoapodsを使いました。
pod 'Kingfisher'
とPodfileに入れてinstallします。
使い方
ViewController.swift
let url = URL(string: "https://example.com/image.png")
imageView.kf.setImage(with: url)
上記のコードで画像のキャッシュを行うことができ、アプリがサクサク動くようになりました。
画像を初めて表示する際はURLからダウンロード、それ以降はキャッシュから表示するのでダウンロードを待たずに表示することが可能になります。
まとめ
画像のキャッシュと聞くとかなりハードな実装のイメージがありましたが、実際に行ってみると便利なライブラリもあり、短時間で行うことができました。
テーブルビューが滑らかに動かないと悩んでいる方は是非参考にしてみて下さい。