Если вы уже используете BackgroundColor в UIImageView, одним из вариантов является использование нескольких UIImageView.
Вы можете достичь того, чего хотите, используя прозрачные PNG и накладывая их друг на друга.Нижний (по Z-порядку) UIImageView может по-прежнему устанавливать BackgroundColor, как вы упомянули.
Другими методами было бы выполнение рисования вручную с помощью CGContext, но я бы использовал эту опцию, только если у вас есть какой-то видвопроса перф, чего не стоит.