Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在Kotlin中不断更改背景色?_Android_Kotlin_Background Color - Fatal编程技术网

Android 如何在Kotlin中不断更改背景色?

Android 如何在Kotlin中不断更改背景色?,android,kotlin,background-color,Android,Kotlin,Background Color,我想让背景像迪斯科舞厅的屏幕一样改变。 但在这段代码中,只显示蓝色。我应该做些什么来改变颜色 var bgColor = 1 val bgDrawableIds = intArrayOf( R.drawable.purple, R.drawable.red, R.drawable.blue, ) bgColor++ disco_display.backgroun

我想让背景像迪斯科舞厅的屏幕一样改变。 但在这段代码中,只显示蓝色。我应该做些什么来改变颜色

var bgColor = 1
        val bgDrawableIds = intArrayOf(
            R.drawable.purple,
            R.drawable.red,
            R.drawable.blue,
        )
        bgColor++
        disco_display.background = resources.getDrawable(bgDrawableIds[bgColor % bgDrawableIds.size])
    
xml


将其包装在一个协同程序中:

lifecycleScope.launch {
    while (true) {
        disco_display.background = resources.getDrawable(bgDrawableIds[++bgColor % bgDrawableIds.size])
        delay(200L)
    }
}

添加完整代码..如何初始化lifecycleScope?您没有。它是您的活动或片段的预先存在的属性。但lifecycleScope位于红色文本上。错误是未解析的引用:LifecycleScope是否对AppCompatActivity进行了子类化,是否正在使用Jetpack库的-ktx版本?
lifecycleScope.launch {
    while (true) {
        disco_display.background = resources.getDrawable(bgDrawableIds[++bgColor % bgDrawableIds.size])
        delay(200L)
    }
}