안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
Asyncc Task에 관해서 궁금한게 있습니다.
현재 요부분을 공부하고 있는데요.
class mainclass extends Activity{
onCreate(savein.....){
new abc().execute(100); //요부분에서...궁금합니다.
}
}
class abc extends AsyncTask<Integer, Integer, Integer>
{
}
위의 execute에서 파라미터로 100을 던졌는데요.
이걸 AsyncTask 클래스에서 누가 받는지 궁금합니다..
그리고 클래스 선언시class abc extends AsyncTask<Integer, Integer, Integer> 이렇게 선언을 하는데
<Integer, Integer, Integer> 이건 무슨 의미인지 궁금합니다..
2012.10.12 17:01:51
http://developer.android.com/reference/android/os/AsyncTask.html
한번 쭉 보세용^^
관련 예제도 찾아보면 많으니까요
코드 보면 어떻게 동작하는지 대충 알 수 있을꺼에요.
AsyncTask<Param, Progress, Result> 입니다.
execute에서 던진 인자값은 Param형의(Object류를 사용할 수 있는 제네릭 타입입니다.)
인자값인데, 백그라운드 작업을 하는 doInBackground에서 받아서 처리합니다.
Progress는 onProgressUpdate에서 받아서 사용하는 인자값으로, 작업 처리 경과를 나타내주면 됩니다.
보통 프로그레스바 등의 업데이트를 위해 Integer를 사용하지만 Object류라면 뭐든 넣을 수 있습니다.
Result는 doInBackground에서 작업이 완료되어 onPostExecute로 결과를 표시하기 위해 리턴해 주는 타입입니다.