我有2个类文件,第一个文件声明了该函数,然后MainActivity文件调用了该函数。这向我显示了一个错误,即visible()和invisible()函数是未解决的引用。
编辑:它在visible()和invisible()函数中显示红色
我有这个 Utils.kt 文件
class Utils{
fun View.visible() {
visibility = View.VISIBLE
}
fun View.invisible() {
visibility = View.INVISIBLE
} }
和 MainActivity.kt 文件
override fun showLoading() {
progressBar.visible()
}
override fun hideLoading() {
progressBar.invisible()
}
答案 0 :(得分:4)
来自Kotlin官方网站:
大多数时候,我们在顶级(即直接)定义扩展 在包装下:
XmlElement
要在声明包之外使用此类扩展,我们需要 将其导入到呼叫站点:
package foo.bar
fun Baz.goo() { ... }
对于您而言,只需将所有扩展功能放在package com.example.usage
import foo.bar.goo // importing all extensions by name "goo"
// or
import foo.bar.* // importing everything from "foo.bar"
fun usage(baz: Baz) {
baz.goo()
}
文件中,然后删除Utils.kt
:
Utils.kt
class Utils