UITableViewで無限スクロール
func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { if indexPath.row == (items.count - 1){ items += nextItems tableView.reloadData() } }
最後のcellに来たらnextItemsを追加しています。
たまにcellForRowAtIndexPathでこの処理をしている記事を見るけど、cellForRowAtIndexPathはあくまで初期化処理に徹するべきだと思うので、willDisplayCellで処理を記述しています。
実際の使用シーンではnextItemsの取得処理が入ると思います。
また、自分の場合、一番下にスクロールしたのが分かるように「ロード中」のようなテキストを表示するfooterを指定しています。その場合、固定表示したくないので、viewDidLoadで下のように指定してます。
tableView.tableFooteView = footer