I'm building an app that store songs. In this project I decided to differentiate any song by title, lyrics and chords.
My UX idea consists of write chords with a custom keyboard.
This keyboard have space button, enter button, backspace button and all 12 notes, and 4 segment controller for differentiate by:
segment 1 = ["C", "C#/Db", "D", "D#/Eb", "E", "F", "F#/Gb", "G", "G#/Ab", "A", "A#/Bb", "B"] //chromatic scale
segment 2 = ["No", "Maj", "Min", "Sus2", "Sus4", "5"] //type1
segment 3 = ["No", "6", "7", "Maj7", "add9", "9", "11", "13"] //type2
segment 4 = ["No","C", "C#/Db", "D", "D#/Eb", "E", "F", "F#/Gb", "G", "G#/Ab", "A", "A#/Bb", "B"] //bass note
(This is just a keyboard for the app, I don't want to install this in the device settings.)
You'll want to set your custom view as the inputView
of your text view or text field.