PDA

View Full Version : اجرای یک AsyncTask در ازای مقادیر مختلف



parniaznet
جمعه 28 فروردین 1394, 17:38 عصر
سلام
وقت بخیر
در کلاس های معمولی وقتی می خوایم یک متدی رو بر اساس یک یا چند متغیر دلخواه اجرا کنیم از دستوری مثل دستور زیر استفاده می کنیم :


myclass(meghdare1, meghdar2, ...);

و در کلاسمون هم به این صورت مقادیر رو دریافت می کنیم :


public class myclass (String meghdar1, int meghdar2, ...){

دستورات

}

حالا همین رو برای یک AsyncTask بخوایم به کار ببریم باید چجوری بنویسیم AsyncTask رو؟ چون مثل این حالت عادی نمیشه نوشت

tux-world
جمعه 28 فروردین 1394, 18:48 عصر
به این شکل میتونی استفاده کنی


private class LongOperation extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
for(int i=0;i<5;i++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
TextView txt = (TextView) findViewById(R.id.output);
txt.setText("Executed");
return null;
}

@Override
protected void onPostExecute(String result) {
}

@Override
protected void onPreExecute() {
}

@Override
protected void onProgressUpdate(Void... values) {
}
}

String... params یعنی تعداد پارامتر نامعلوم با فرمت String رو میخوام