从Fragment调用时,Anko toast()方法会导致java.lang.NoSuchMethodError

Jan*_*ski 9 android toast kotlin android-toast anko

当我从Android片段调用toast("Toast的消息文本")时,我遇到了以下错误:

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

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

可能是造成这次事故的原因是什么?标准Android Toast工作得很好.toast()函数也可以在Activities中运行.

Den*_*eev 11

这很奇怪,可能是一个bug.

但接下来对我有用

activity.toast("Toast's message text")
Run Code Online (Sandbox Code Playgroud)

要么

context.toast("Toast's message text")
Run Code Online (Sandbox Code Playgroud)

  • 尴尬地花了我很长时间才弄清楚我是从一个片段中调用这个,并且需要上下文/活动 (2认同)