【问题标题】:How to close activity from ASyncTask?如何从 ASyncTask 关闭活动?
【发布时间】:2011-04-09 10:21:37
【问题描述】:

我从Activity开始ASyncTask

public class PrepareRequestTokenActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        new OAuthRequestTokenTask(this, consumer, provider).execute();
    }

然后,根据 ASyncTask 执行的结果,我应该关闭这个PrepareRequestTokenActivity 活动。

(结果为 onPostExecuteAsyncTask 已知)

【问题讨论】:

    标签: android android-activity android-asynctask


    【解决方案1】:

    onPostExecute 你简单地使用你的这个变量来执行finish()。

    在您的构造函数中保留您的活动参考 并在 onPostExcecute 方法中调用 finish()

    【讨论】:

    【解决方案2】:

    如果您在onPostExecute 内工作,并且您是asyncTask(),则课程是您活动的内部;只需调用 MyClassName.this.finish() 或类似的东西,应该可以正常工作吗?我相信onPostExecute() 具有 UI 范围。

    【讨论】:

    • 我的 ASyncTask 在外部类中。看起来 Sunil 的方法奏效了。
    猜你喜欢
    • 1970-01-01
    • 2010-12-02
    • 2011-06-17
    • 2023-04-03
    • 1970-01-01
    • 2015-07-23
    • 1970-01-01
    • 2013-03-17
    • 1970-01-01
    相关资源
    最近更新 更多