Короткий ответ: вам придется потратить некоторое время на изучение рисования градиентов и теней в Core Graphics.
Соответствующая документация называется "Руководство по программированию в Quartz 2D".1004 * После того, как вы научитесь рисовать тени и градиенты, вам придется потратить довольно много времени на увеличение масштаба при сравнении того, что вы рисуете, с тем, как выглядит кнопка.
Вы не спрашивали, но вот что я бы сделал:
Подкласс UIBarButtonItem и добавьте туда свою пользовательскую функциональность.Позвольте UIBarButtonItem нарисовать себя.