Search code examples
swiftxcodeuitableviewuisegmentedcontrol

Table rows in segmented control wont scroll up when segment changes


I have two segments ONC and OFC, after data is displayed in ONC segment and I scroll it to row15, when I change the segment to OFC, it shows row15 but I want it to show row1

public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
    var typeOfEvent = 0
    switch (eventSegCtrl.selectedSegmentIndex)
    {
    case 0:
        typeOfEvent = oncEvents.count
        break
    case 1:
        typeOfEvent = ofcEvents.count
        break
    default:break
    }

    return typeOfEvent
}

How do I solve this?


Solution

  • The simplest solution is on reload of your tableView you can set its contentOffset to CGPoint.zero.

    self.tableView.setContentOffset(CGPoint.zero, animated: false)