No, all they said is what I posted.
A possible solution that is out there and which I have now implemented involves not using UINavigationBar at all; hide it. For UITableViewController subclasses I have added a view to tableHeaderView. I have implemented scrollViewDidScroll: method to ensure the header does not move.
I referred to this post: https://stackoverflow.com/questions/16590099/uitableview-header-without-bouncing-when-pull-down
For UIViewController subclasses one can create a new UIViewControllerClass with a view for the header and below that a container view which holds the UIViewController subclass.
If there are buttons in the tableHeaderView then extra work is needed since as the tableView scrolls under the headerView the cells under the header view receive the touches, not the buttons. The cells should implement, or be a subclass, of a UITableViewCell that implements touchesBegan: and related methods so as to pass the touches to the buttons if the touch is over the button.