Проблема здесь в том, что вы не можете начать вызов функции инфиксного вызова на новой строке - компилятор по существу выводит точку с запятой / строку, заканчивающуюся после вашего первого apply
вызова.То же самое с операторами: см., Например, эту проблему .
Поэтому вам нужно немного переформатировать код, чтобы подключить to
, наиболее просто так:
val (xanimator: ObjectAnimator, alphaanim: ObjectAnimator) = findViewById<View>(R.id.imageView).let { img ->
ObjectAnimator.ofFloat(img, "translationX", 100f).apply {
duration = 2000
} to
ObjectAnimator.ofFloat(img, "alpha", 1.0f).apply {
duration = 2000
}
}
Но для удобства чтения, возможно, вы могли бы пойти с чем-то вроде этого:
val (xanimator: ObjectAnimator, alphaanim: ObjectAnimator) = findViewById<View>(R.id.imageView).let { img ->
Pair(
ObjectAnimator.ofFloat(img, "translationX", 100f).apply {
duration = 2000
},
ObjectAnimator.ofFloat(img, "alpha", 1.0f).apply {
duration = 2000
}
)
}
Или что-нибудь промежуточное.