【问题标题】:creating a window in onPostExecute() of AsyncTask in android在 android 的 AsyncTask 的 onPostExecute() 中创建一个窗口
【发布时间】:2012-04-14 06:55:03
【问题描述】:

该应用程序是从服务器下载一些文本并在新窗口中向用户显示文本。我需要一个新窗口,因为文本量可能非常大。

由于下载过程可能需要太多时间,我使用内部AsyncTask 类将其作为后台任务处理。下载文本后,我希望在onPostExecute() 在AsyncTask 中创建一个新窗口来显示任务。

onPostExecute()中的代码如下:

Intent intent = new Intent(this.parent, DisplayActivity.class);
Bundle bundle = new Bundle();
bundle.putStringArray("array", fileContent);
intent.putExtra("bundle", bundle);
startActivity(intent);

this.parent 指的是当时显示给用户的Activity。文件内容是包含文本的字符串。

但是,代码不起作用。没有窗口显示。任何帮助表示赞赏。

顺便问一下,有没有更好的方法来实现这个应用程序?

【问题讨论】:

    标签: android window android-asynctask


    【解决方案1】:
    Intent intent = new Intent(this.parent, DisplayActivity.class);
    

    您应该使用 this.parent 而不是,

    Intent intent = new Intent(Activity_Name.this, DisplayActivity.class);
    

    【讨论】:

    • Activity_Name 是什么意思?您的意思是包含 AsyncTask 类的类的名称?我使用“this.parent”,因为我将 Activity 作为数据成员传递给 AsyncTask。如何使我的代码与您的格式相同??
    • 这是您编写 AsyncTask(基类)的 Activity
    • 对不起。我打错了,所以有错误。当我输入正确时,没有出现新窗口。
    • 执行上述代码时,andorid模拟器提示“很遗憾,Activity已停止”。
    猜你喜欢
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-15
    • 1970-01-01
    • 2011-04-08
    • 1970-01-01
    相关资源
    最近更新 更多