我有一个程序,每次单击按钮时都使用异步任务...我不想在每次单击时都继续输入WHOLE AsyncTask。这将是单调乏味的。我能做到这一点的更好方法是什么? 这是一些源代码。
new AsyncTask<Void, Integer, Void>(){
@Override
protected Void doInBackground(Void... arg0) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void result) {
text1.setText("Nice to meet you "+name);
dismissDialog(typeBar);
}
@Override
protected void onPreExecute() {
typeBar = 0;
showDialog(typeBar);
}
}.execute((Void)null);
}
});
}
答案 0 :(得分:3)
创建一个扩展AsyncTask的新类:
public class MyTask extends AsyncTask<Void, Integer, Void>
{
@Override
protected Void doInBackground(Void... arg0)
{
}
}
然后,无论你需要它,只需这样做:
new MyTask.execute();
多数民众赞成!玩得开心!
答案 1 :(得分:0)
把它放在公共或私人课堂上。然后,您可以根据新创建的类的名称来引用/实例化它。