Для этого есть три подхода.Во-первых, это нарисовать кнопку с CoreGraphic.Во-вторых, используйте пользовательское изображение.Третий подход, вероятно, самый простой и позволяет при желании использовать свойство tintColor для динамических изменений.
Идея состоит в том, чтобы создать UISegmentedControl и стилизовать его, чтобы он выглядел как кнопка, и использовать это свойство tintColor для измененияцвет "кнопки".
Вы можете найти конкретные детали на этой веб-странице http://charles.lescampeurs.org/2011/02/10/tint-color-uibutton-and-uibarbuttonitem.