2016-01-26 4 views
0

Как я нашел в AsyncTask класса объявление этого класса следующим образомРасширение AsyncTask без перекрывая его paramters

public abstract class AsyncTask<Params, Progress, Result> 

Когда я продлить AsyncTask я должен переопределить эти параметры (то есть. AsyncTask), я не» т нужно, мне нужно добавить некоторые функциональные возможности для AsyncTask, но все еще в состоянии переопределить эти параметры при расширении моего CustomAsyncTask, так что я должен сделать мой заказ AsyncTask декларацию как этот также

public abstract class CustomAsyncTask<Params, Progress, Result> 

Но когда я это сделать «Params, Progress, Result» не распознаются как в классе AsyncTask.

ответ

0

Я обнаружил, что я могу объявить свой собственный класс, как этот

public abstract class CustomAsyncTask<Params, Progress, Result> extends AsyncTask<Params, Progress, Result> 
2

Как насчет

public abstract class CustomAsyncTask<Params, Progress, Result> 
     extends AsyncTask<Params, Progress, Result> 
-1

Вы можете продлить до AsyncTask с из overriding в onPreExecute, onPostExecute но вы должны overridedoInBackground ,

public class AsyncTaskParseJSONData extends AsyncTask { 
    public AsyncTaskParseJSONData(JSONObject response) { 
     this.responseObject = response; 
    } 

    @Override 
    protected Object doInBackground(Object[] params) { 
    } 
} 

Посмотрите, поможет ли это вам.