gpt4 book ai didi

android - 在 Kotlin 中切换可见性,isVisible Unresolved 引用

转载 作者:行者123 更新时间:2023-11-29 14:29:33 25 4
gpt4 key购买 nike

慢慢学习Kotlin。只是从卷中生成一个随机数。如果 roll = 9 我想让按钮和搜索栏不可见。

我正在使用 toggleVisibility 函数来完成此操作,但 Kotlin 编译器将 isVisible 视为未解析的引用

package com.example.randomizer

import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.SeekBar
import android.widget.TextView
import android.widget.VideoView
import java.util.*

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

val rollButton = findViewById<Button>(R.id.rollButton)
val resultsTextView = findViewById<TextView>(R.id.resultsTextView)
val seekBar = findViewById<SeekBar>(R.id.seekBar)
val winText = "9 You Win !"




rollButton.setOnClickListener {
val rand = Random().nextInt(seekBar.progress)
resultsTextView.text = rand.toString()
if (rand == 9) {
resultsTextView.text = winText
seekBar.toggleVisibility()
rollButton.toggleVisibility()
}

}



}

fun View.toggleVisibility() {
if (this.isVisible()) {
this.visibility = View.INVISIBLE
} else {
this.visibility = View.VISIBLE
}
}
}

编译器错误:

unresolved reference isVisible

最佳答案

如上文所述,您可以自己指定isVisible()作为扩展函数。

fun View.isVisible() = this.visibility == View.Visible

或者您可以添加 KTX View 依赖项并开始使用其中的一些方法。我建议你看看:https://developer.android.com/reference/kotlin/androidx/core/view/package-summary#(android.view.View).isVisible:kotlin.Boolean

要导入并开始使用 KTX,请在 build.gradle

中添加您的依赖项
implementation "androidx.core:core-ktx:1.0.2"

KTX 是一组常用的 Kotlin 扩展。另请检查:https://developer.android.com/kotlin/ktx

关于android - 在 Kotlin 中切换可见性,isVisible Unresolved 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56463883/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com