Что касается вашего комментария к ответу Эрика Б:
Если вы прочитали имя метода: initWithContentViewController:
, а затем прочитали сообщение об ошибке, что он не должен вызываться с nil в качестве аргумента, вы должны прийти к своей проблеме.
Поповерный контроллер ожидает, что вы передадите действительный экземпляр контроллера представления. Если вы хотите, чтобы представление вашего контроллера представления было кнопкой, это не проблема, но вы должны предоставить контроллер представления для контроллера popover.