Если вы не хотите, чтобы каждый viewController обрабатывал меню, я бы предложил иметь корневой viewController, который действует как контейнер. У него есть подпредставление, в котором отображается содержимое ваших различных контроллеров представления, а также элементы управления вашим меню и любая другая информация наложения, которую вы, возможно, захотите предоставить.