The current else condition in cellForRowAtIndexPath results in a row disappearance when the container view is added. By doing a check on self.selectedRowIndexPath you can adjust the indexPath accordingly. This also fixes the index-out-of-range crashes that were caused by the same bug. So...

Hope this helps,
Richard