0

У меня есть этот фрагмент:Android: AsyncTaskLoader сбой при запуске из фрагмента

общественный класс ResultFragment расширяет фрагмент реализует LoaderCallbacks {

public static ResultFragment newInstance(Bundle args) { 
ResultFragment fragment = new ResultFragment(); 
fragment.setArguments(args); 
return fragment; 
} 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 


    getActivity().getSupportLoaderManager().initLoader(0, null, this); 

} 

@Override 
public Loader<EstateSearch> onCreateLoader(int id, Bundle args) { 

     return new RESTLoader(getActivity(), "http://etc"); 

} 

@Override 
public void onLoadFinished(Loader<EstateSearch> loader, EstateSearch es) { 

} 

@Override 
public void onLoaderReset(Loader<EstateSearch> loader) { 

} 

} 

AsyncTaskLoader выглядит следующим образом:

общественного класса RESTLoader расширяет AsyncTaskLoader {

private String searchUrl; 

public RESTLoader(Context context, String searchUrl) { 
    super(context); 
    this.searchUrl = searchUrl; 


} 

@Override 
public EstateSearch loadInBackground() { 


     EstateSearch es = null;  

     try { 


    Network Stuff 


    } catch (Exception e) { 

    } 

     return es; 
} 

@Override 
public void deliverResult(EstateSearch es) { 


    super.deliverResult(es); 
} 

@Override 
protected void onStartLoading() { 
    forceLoad(); 
} 

@Override 
protected void onStopLoading() { 

    cancelLoad(); 
} 

@Override 
protected void onReset() { 
    super.onReset();   
    onStopLoading();  
} 
} 

Приложение cra Shes с таинственной (по крайней мере, для меня) ошибки:

http://i46.tinypic.com/260fw43.png

От сдачи в некотором Log.ds я знаю, что конструктор AsyncTaskLoader даже не называется. Я уже пытался переместить init() загрузчика на более поздние части жизненного цикла фрагмента. Этот фрагмент находится в пределах ViewPager btw, если это важно. AsyncTaskLoader отлично работает при вызове из Activity.

Любые идеи о том, что я делаю неправильно?

+0

Ошибка может быть в отрезали сеть вещей, вы можете проверьте наличие бросков и конверсий. Вероятно, вы выделяете целое число в значение enum, но это целое число находится за пределами диапазона перечислений. – Machinarius

+0

Спасибо, но нет, RESTLoader даже не создан с помощью его конструктора, поэтому он никогда не работает в сети. – FWeigl

ответ

0

Хорошо, довольно неловко ошибка: я уже был другой погрузчик в деятельности, что фрагмент присоединен к которому также была ID 0: -/

Смежные вопросы