我在显示吐司信息时遇到问题。当我尝试调用它时,我得到了以下错误
Unresolved reference. None of the following candidates is applicable because of receiver type mismatch:
public inline fun Fragment.toast(message: CharSequence): Toast defined in org.jetbrains.anko
public inline fun Fragment.toast(message: Int): Toast defined in org.jetbrains.anko
public inline fun Context.toast(message: CharSequence): Toast defined in org.jetbrains.anko
public inline fun Context.toast(message: Int): Toast defined in org.jetbrains.anko
public inline fun AnkoContext<*>.toast(message: CharSequence): Toast defined in org.jetbrains.anko
public inline fun AnkoContext<*>.toast(message: Int): Toast defined in org.jetbrains.anko我也是kotlin的新手,我搜索了很多次也没有找到任何东西,但我确信它确实很简单。
我在这里找到的修复'receiver type mismatch' with Fragment and Anko toast对我没有帮助。
我有这些依赖
dependencies {
...
implementation "org.jetbrains.anko:anko-commons:$anko_version"
implementation "org.jetbrains.anko:anko-design:$anko_version" // For SnackBars
implementation 'org.jetbrains.anko:anko-appcompat-v7-commons:0.10.8'
implementation "org.jetbrains.anko:anko-support.v4-commons:$anko_version"
}和这些进口
import org.jetbrains.anko.toast
import org.jetbrains.anko.support.v4.toast我正在努力解决的问题可以归结为
class MainActivity : AppCompatActivity() {
toast("this toast works")
class Player() {
fun score() {
if (x) {
//do this
} else {
toast("this toast doesn't work")
}
}
}
}它给了我上面看到的错误。
其他的一切似乎都在按照我想要的方式进行。
我想我很难理解为什么在我的MainActivite.kt顶部导入的东西不能在我的.kt中适用于所有的东西
发布于 2021-07-30 13:22:37
发布于 2021-01-10 07:13:11
像这样使用它:
val toast = Toast.makeText(applicationContext, text, duration)
toast.show()并且键入this@MainActivity而不是applicationContext。另一种方法是将上下文保存为全局变量,然后使用context.toast("Hello World");访问它
https://stackoverflow.com/questions/65648480
复制相似问题