Many developers are facing this problem that whenever they reload
UITableView it scrolls up, or whenever they edit the post and reload
UITableView again it scrolls up. There are two simple fixes of this issue.
When the height of the row is fixed
When your height of the row is fixed, then it is pretty simple. Follow the below steps.
– Open your Storyboard and select
UITableView in your Xib.
– Now open
Size Inspector of
– In the first section that is Table View enter the fixed Row Height and Estimated height and uncheck both the Automatic box. After making above changes your Xib will be look like below.
When the height of the row is dynamic
When the height of the row is dynamic we will try a different way. We will use
endUpdates() functions. Instead of reloading
UITableView use below piece of code.
let contentOffSet = self.tableView.contentOffset self.tableView.beginUpdates() /* --- Add your code here --- */ self.tableView.endUpdates() self.tableView.layer.removeAllAnimations() self.tableView.setContentOffset(contentOffSet, animated: false)
Hopefully, this will solve your problem.