Canvas ничего не рисует? Kotlin

#android #canvas #kotlin #syntax #spinner

#Android #холст #kotlin #синтаксис #счетчик

Вопрос:

Когда я пишу этот код, он не работает:

  if(shapeSpinner?.selectedItemPosition == 0){
            canvas.drawCircle((0..dimensionX).random().toFloat(), (0..dimensionY).random().toFloat(), (0..dimensionX).random().toFloat(), paint)
 }
 if(shapeSpinner?.selectedItemPosition == 1){
            canvas.drawRect((0..dimensionX).random().toFloat(), (0..dimensionY).random().toFloat(), (0..dimensionX).random().toFloat(), (0..dimensionY).random().toFloat(), paint)
 }
  

Но когда я пишу этот код, он работает:

  canvas.drawCircle((0..dimensionX).random().toFloat(), (0..dimensionY).random().toFloat(), (0..dimensionX).random().toFloat(), paint)
  

Но я хочу, чтобы пользователь мог выбирать, какую фигуру он хочет нарисовать.
Почему не работает первый код?

Комментарии:

1. Выбрано ли что-нибудь в счетчике во время выполнения кода рисования? Может быть, вам просто нужно переместить его в прослушиватель onSelectionChange?

2. Спасибо, это сработало.

3. Я добавил свой комментарий в качестве ответа. Пожалуйста, отметьте это как разрешенное, чтобы вопрос не остался без ответа.

Ответ №1:

Выбрано ли что-нибудь в счетчике во время выполнения кода рисования? Может быть, вам просто нужно переместить его в onSelectionChange прослушиватель?