Put this here for those who get this problem for nested view controllers.
My view controller containment hierarchy:
UINavigationController |--UIViewController |--UITabBarController |--UIViewController
The last view controller has a UITableView , whose scrollIndicatorInsets continues to get offset using the UITabBar height tablet bar controller , even if it's hidden .
Decision. Set automaticallyAdjustsScrollViewInsets to false in the view controller, which contains the tab bar controller (and is located inside the UINavigationController ). No need to set additional properties in the controller of the tab bar and the second controller of the view, where the UITableView is located.
source share