私はtableHeaderViewを持つtableViewControllerを持っています。私がtableViewの一番上にいて、tableViewを少しスクロールすると、tableHeaderViewは隠され、少しスクロールして再び表示されます。これがデフォルト動作です。tableHeaderViewはContainerViewController以外のviewControllerをポップするときの状態を保持します
viewControllerにプッシュしてからtableViewControllerにポップバックすると、tableHeaderViewの状態は保持されます。すなわち、それが隠されていれば、それは隠されたままであり、可視であれば、それは目に見えるままである。
しかし、何かの理由から、containerViewを持っていて別のviewControllerにプッシュしてからポップバックすると、tableHeaderViewが常に表示されます。押し込む前に隠れていたとしても。