相关疑难解决方法(0)

Android开发:在单独的类文件中使用AsyncTask

我一直在玩各种试图熟悉AsyncTask的例子.到目前为止,我看到的所有示例都将AsyncTask包含在主要活动的onCreate方法中.我不太喜欢,所以我想看看将它分成自己的课程有多难.到目前为止我有这个:

主要活动

package com.example.asynctaskactivity;

import android.os.AsyncTask;
import android.os.Bundle;
import android.os.SystemClock;
import android.app.Activity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;

import com.example.asynctaskactivity.ShowDialogAsyncTask;

public class AsyncTaskActivity extends Activity {

 Button btn_start;
 ProgressBar progressBar;
 TextView txt_percentage;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        btn_start = (Button) findViewById(R.id.btn_start);
        progressBar =  (ProgressBar) findViewById(R.id.progress);
        txt_percentage= (TextView) findViewById(R.id.txt_percentage);
        Log.v("onCreate","Attempt set up button OnClickListener");
        btn_start.setOnClickListener(new View.OnClickListener() 
        { 
           @Override
           public void onClick(View v) {
               btn_start.setEnabled(false);
               new ShowDialogAsyncTask().execute();
           }
        });

        Log.v("onCreate","Success!"); 
    }
} …
Run Code Online (Sandbox Code Playgroud)

java android android-asynctask

15
推荐指数
2
解决办法
1万
查看次数

外部类中的Android AsyncTask

我一直在研究一个应用程序,并且我已经设法AsyncTask让它在内部类中工作正常.

现在,我正在重构代码,以便AsyncTask它自己在一个单独的类中,但我想知道,ProgressDialog一旦任务成功完成,我如何杀死并启动一个新的Activity?我已尝试在onPostExecute(..)方法中启动一个新的Activity ,但我知道这不起作用.


将我的UI线程活动作为参数传递给AsyncTask的构造函数似乎不起作用:

//In UI Thread I had
public class Test101 extends Activity {
    private Button btnLogin;
    private LoginTask mLoginTask;
    private Context context=this;
    private Test101 mTest101;

    mLoginTask=new LoginTask(context,mTest101);
    mLoginTask.execute(null);

    // In the AsyncTask I had
    Activity mParentActivity;

    public LoginTask(Context context,Activity act){
        this.ctx=context;
        this.mParentActivity=act;
    }

    onPostExecute(..){
        mParentActivity.callSomeMethod();
    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

我不断得到一个NullPointerException,也许我错过了一些东西,但这对我不起作用.

android asynchronous android-asynctask

4
推荐指数
2
解决办法
1万
查看次数

从不同类Android调用Asynctask

我得到了一个名为A的类,我的async类被编写为A的内部类.我得到了另一个名为B(Activity)的类.现在我在B班.我想要的是调用A的asyncTask.

我对这个问题很困惑,如果有人能给我一个正确的答案,他将成为一个救命的人.希望你们帮助我.谢谢.

java android android-asynctask

0
推荐指数
1
解决办法
4934
查看次数

标签 统计

android ×3

android-asynctask ×3

java ×2

asynchronous ×1