ユーザーが生成したコンテンツを含むいくつかのタブを持つタブ バーを備えたアプリがあります。各ビュー コントローラーが読み込まれると、viewDidLoad メソッドがサーバーに HTTP リクエストを送信してデータを取得し、それに応じてそのビューにデータを入力します。ただし、すべてのデータがロードされると、ビューは同じままです (View Controller がアンロードされて再ロードされない限り)。
ユーザー生成コンテンツを使用する他の多くのアプリも同様の動作をしますが、アプリがバックグラウンドに移行してから再びフォアグラウンドに戻ると、各ビューがリロードされます。つまり、アプリがアクティブなときにユーザーがさまざまなタブを切り替えても、コンテンツは自動的に更新されません。ユーザーがアプリを「終了」し、後でアプリに戻ると、ビューが再読み込みされます。
このように動作するようにアプリを設計するための標準的な方法はありますか? 具体的には、アプリの「再起動」に関するビューを更新するために利用できる UIKit の機能があるかどうか疑問に思っています。
それ以外の場合、簡単な方法は、viewDidLoad で各ビュー コントローラーを通知用に登録し、アプリがフォアグラウンドに入るのをリッスンすることだと思います。その後、コントローラーはデータをリロードすることで各通知に応答できます。