9

当我从 Android 片段调用 toast("Toast's message text") 时出现以下错误:

java.lang.NoSuchMethodError:没有虚拟方法getActivity()Landroid/app/Activity;在 Landroid/support/v4/app/Fragment 类中;或其超类('android.support.v4.app.Fragment' 的声明出现在 name-of-the-file-classes.dex 中)

我正在使用 Anko v0.9.1 和 Kotlin 1.0.6

这次崩溃的原因可能是什么?标准的 Android Toast 工作得很好。在活动中也可以使用 toast() 函数。

4

2 回答 2

11

这很奇怪,可能是一个错误。

但接下来对我有用

activity.toast("Toast's message text")

或者

context.toast("Toast's message text")
于 2017-02-24T07:15:58.580 回答
1

如果您想在类(例如适配器)中使用它,那么您肯定必须首先获取活动(上下文)

holder.itemView.setOnClickListener(
                { view ->
                    view.getContext().toast("Message")
                }
        )
于 2018-05-01T17:51:23.860 回答