У меня есть функция, выполнение которой занимает некоторое время. в настоящее время я запускаю его внутри потока, потому что я не могу заставить работать AsyncTask. мне нужно передать переменную double [] в качестве входных данных в doInBackground, затем он должен вернуть результат, который также является переменной double [], в onPostExecute, где результат будет напечатан в textView.
это выглядит так просто:
public class finder extends AsyncTask <Double , Void , Double> {
double[] input;
double[] result;
public finder() {
super();
}
@Override
protected double[] doInBackground(Double... params) {
result = foo(input)
return result;
}
protected void onPostExecute(Double... params) {
}
public double[] foo (double [] input){...}
}
поэтому у меня есть несколько вопросов:
1- Какая конфигурация аргументов для класса и каждого метода может выполнять эту работу?
2-Нужно ли переопределить методы? (когда я изменяю спецификатор doInBackground на double [], это дает мне ошибку при @Override)
3 - каким должен быть каждый спецификатор методов?
4 - как я могу заставить onPostExecute распознавать textView? что нужно передать asyncTask?