Как изменить цвет нарисованной фигуры в android api 28 - PullRequest
0 голосов
/ 09 апреля 2020

Я хочу изменить цвет в файле XML, который я пишу в отрисовке, используя код цвета из API, но он не работает в новых версиях android. Код такой:

 val selector = ContextCompat.getDrawable(context, R.drawable.nps_selector)!!
  ((ContextCompat.getDrawable(
    context,
    R.drawable.nps_background
  )!! as LayerDrawable).findDrawableByLayerId(R.id.nps_state_out) as GradientDrawable).setColor(
    Color.parseColor(
      session.getPrimaryColor()
    )
  )
  ((ContextCompat.getDrawable(
    context,
    R.drawable.nps_background
  )!! as LayerDrawable).findDrawableByLayerId(R.id.nps_state) as GradientDrawable).setStroke(
    getMargins(),
    invertColor(session.getPrimaryColor())
  )
 return selector

Тогда я использую его вот так;

radioButton.background = getSelector()

Xml файлы: введите описание изображения здесь

nps_background. xml: введите описание изображения здесь

Api работает на 19, а 28 - нет. Было бы здорово, если бы вы могли помочь.

...