浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【Swift】UITableViewを一番上までスクロールする方法

ちょっとした小ネタですが、今後も使いそうなので備忘録としてまとめ。
SwiftUITableView を任意のタイミングで一番上までスクロールする方法です。
私の場合、UITableView に表示しているデータを再読み込みした時に、読み込みが完了したタイミングで一番上までスクロールさせたいときに使用しました。

参考にさせていただいた投稿はこちらから。

swift – Swift4でUITableviewの表示を一番上にスクロールさせるには – スタック・オーバーフロー
https://ja.stackoverflow.com/questions/40854/swift4でuitableviewの表示を一番上にスクロールさせるには

まさしく私が実装したい処理そのものが載っている記事を見つけることができました。

 

実装するコードは下記です。

let indexPath = IndexPath(row: 0, section: 0)
self.tableView.scrollToRow(at: indexPath, at: .top, animated: true)

任意のタイミングで上記コードを実行すれば、一番上までスクロールしました!
ただ、ページによっては animated: true なのに、アニメーションなしでスクロールしたので、ちょっと確認する必要があるかもしれません。
が、スクロール自体は問題なく動作するので、そこまで気にしなくても良いような気もします。

追加する処理は以上です。

 

以上、Swift の UITableView を任意のタイミングで一番上までスクロールする方法でした。
ご参考になれば幸いです。

  • この記事いいね! (0)