android - 从 AsyncTask 举杯

标签 android android-asynctask

我正在尝试从 asynctask 举杯 toast ,但我在正确设置参数时遇到了问题。我正在从 onProgressUpdate toast ,所以我在 UI 线程上,我认为这是正确的。我认为上下文参数有问题,我应该将什么作为值传递?

编辑:显示下面的代码

    @Override
protected void onProgressUpdate(String... strings){
    Toast toast = Toast.makeText(MainActivity.this, strings[0], Toast.LENGTH_LONG);
    toast.show();
}

MainActivity.this 表示“在范围内无法访问类型 MainActivity 的封闭实例。”我不确定应该将什么作为上下文传递。

谢谢

最佳答案

通过从 MainActivity 调用 getApplicationContext() 获取 Context 对象,并将其作为参数传递给您的 AsyncTask。正如 EboMike 所指出的,MainActivity.this 仅在您的 AsyncTask 是内部类时才有效。

关于android - 从 AsyncTask 举杯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5385569/

相关文章:

android - looper 到 "quit"哪里?

Android:在AsyncTask.doInBackground中,循环被强行打破

android - 从队列更新 Activity 的最佳方式

java - 带时区的简单日期格式

android - 如何使用 instantApp webview 加载 http url?

android - 抽屉导航重叠在 ActionBar 导航选项卡内容上

android - runonuithread 未从 asynctask doinbackground 调用

c# - 如何在 Task.factory.fromAsync 中使用 void 方法

android - 在android中处理按钮上的多个点击事件

android - 需要将图像从 res 文件夹复制到画廊/文件夹