Я бы не заморачивался и сделал для каждого окна своё View и всё. Это гораздо упрощает дело. Но если нужно именно на одном, то несколько вариантов:
1) Container View
2) Полностью всё делать программно
3) Создать 3 IBOutletCollection, по одному на каждую страницу. Это гораздо лучше варианта, чем каждый объект делать hidden = YES.
у первого варианты много костылей(я если честно так и не освоил его как слеудет), второй на любителя, а третий самый оптимальный на мой взгляд! Так ты сможешь менять какой вид тебе нужен и одной строчкой убирать ту страницу, которая у тебя сейчас и отображать ту, которая нужна. При этом всё происходит на одном View и бэкграунд, как ты выразился - остаётся.