В соответствии с w3_spe c для трехзначного шестнадцатеричного цвета вам просто нужно продублировать каждое значение, как-то так:
#F3A -> #FF33AA
, поскольку вы получаете значение из бэкэнда Можно попробовать применить регулярное выражение для преобразования значения до Color.parseColor , как это (написано в Kotlin)
val color = "#FA3"
var colorConverted = color.replace("#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])".toRegex(), "#$1$1$2$2$3$3")
Вот ссылка на детская площадка, надеюсь, это поможет.