Я запускаю AsyncTask в основном действии и результате этого является вектором строки. Я хочу использовать этот вектор для изменения вида списка в фрагменте. Я использую интерфейс (Asyncresponce) для получения вектора public void (processFinish), а затем я реализовал Asyncresponce в фрагменте и использовал его для очистки и заполнения адаптера Array, но public void не работает. Я использую оператор регистрации, чтобы понять, но я не вижу его на мониторе устройства.public void реализация не работает во фрагменте
Я не знаю, в чем проблема. Важные части основной деятельности и AsyncTask:
AsyncResponse myasync = new AsyncResponse() {
public void processFinish(String output[]) {
}
};
MainActivity.FetchWeatherTask weatherTask = new MainActivity.FetchWeatherTask(myasync);
//MainActivity.FetchWeatherTask weatherTask = new MainActivity.FetchWeatherTask();
weatherTask.execute("232931","82da4ddd2e8380be6dea06b177926b2d");
на пост выполнить, где я прохожу строку вектора на processFinish:
Log.v(LOG_TAG, "on post execute:+: "+ resultStrs[1]);
delegate.processFinish(resultStrs);
и фрагмент:
public class MainActivityFragment extends Fragment
implements MainActivity.AsyncResponse {
public String[] weatherdata = new String[5];
public ArrayAdapter<String> mForecastAdapter;
public final String LOG_TAG_fragmet =MainActivityFragment.class.getSimpleName();
@Override
public void processFinish(String output[]) {
if (output!= null){
Log.v(LOG_TAG_fragmet, "this is from fragment="+ output[1]);
mForecastAdapter.clear();
}
}
да это работает, однако я поставил это на Oncreateview. большое спасибо – saeed