I have plain UITableView with many sections and rows. Sections work fine. But sometimes after reload data of table, section change position. For example it was happened when
Calling reloadData() twice also works for me, but I would suggest calling tableView.layoutSubviews() after reloadData(), which also works for me.