¿Cómo puedo configurar un botón personalizado para un formato de función(negrita, subrayado)?

Tengo un UITextView, que ha sido creado para allowEditingAttributes. Puedo cambiar el Subrayado en Negrita, etc. desde el UIMenuController en la vista de texto, pero lo que estoy queriendo hacer es tener botones personalizados que desencadenan estos. Como en Evernote - https://i.stack.imgur.com/SioxF.jpg estoy con ganas de tener una selección de colores como bien. Es esto factible con UITextView y NSAttributedString? Si es así, ¿cómo?