Abh*_*man 3 android android-asynctask android-activity
在我的应用程序中,我有3个活动:
1. Login
2. AsyncTask
(不同类)
3. Welcome
收到所有信息后,Login Activity
它移动到AsyncTask Activity
.当在AsyncTask
完成其移动到Welcome Activity
.我想Login Activity
在AsyncTask Activity
完成工作后立即关闭..
我尝试使用下面的代码onPostExecite()
的AsyncTask
:
Login.this.finish();
但我得到一个错误:No enclosing instance of the type of Login is accessible in scope
..
请告诉我如何Login Activity
在完成我的工作后关闭我的AsyncTask
..
提前致谢...
由于AsyncTaskActivity位于与LoginActivity不同的文件中,因此您无法通过以下方式完成LoginActivity:
Login.this.finish();
相反,您应该将活动参考作为参数传递给AsyncTaskActivity类,就像您可以定义以下构造函数一样:
private class AsyncTaskActivity extends AsyncTask<String, Void, String> {
Activity mActivity;
public AsyncTaskActivity(Activity activity)
{
super();
this.mActivity=activity;
}
}
Run Code Online (Sandbox Code Playgroud)
并且每当您想要完成活动呼叫
this.mActivity.finish();
Run Code Online (Sandbox Code Playgroud)
在LoginActivity中创建AsyncTaskActivity的对象
AsyncTaskActivity asynTask = new AsyncTaskActivity(LoginActivity.this);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5220 次 |
最近记录: |