0
조각에서 AsyncTaskLoader를 실행하려고하고 있는데 왜 onLoadFinished가 호출되지 않았는지 정확히 알지 못합니다. 내가 전달하는 컨텍스트가 적절한 것인지 확실하지 않습니다.AsyncTaskLoader가 단편에서 제대로 작동하지 않습니다.
이 기본 및 사용자 정의 AsyncTaskLoader입니다 :
나는 3 가지 방법이 overwritted을 보여줍니다 여기에public static class CustomAsyncLoader extends AsyncTaskLoader<String>
{
public CustomAsyncLoader(Context context) {
super(context);
// do some initializations here
}
@Override
protected void onForceLoad() {
// TODO Auto-generated method stub
super.onForceLoad();
}
@Override
public void deliverResult(String apps) {
}
@Override
protected void onStopLoading() {
// Attempts to cancel the current load task if possible
cancelLoad();
}
@Override
public void onCanceled(String apps) {
super.onCanceled(apps);
}
@Override
public String loadInBackground() {
String result = "";
// ...
// do long running tasks here
// ...
return result;
}
}
: onResume 내 조각의 내가 로더를 초기화하기 위해서 호출하고있는 방법에
@Override
public Loader<String> onCreateLoader(int arg0, Bundle arg1) {
// TODO Auto-generated method stub
return new CustomAsyncLoader(root.getContext());
}
@Override
public void onLoadFinished(Loader<String> arg0, String arg1) {
// TODO Auto-generated method stub
Toast.makeText(mContext, "onLoadFinish", Toast.LENGTH_LONG).show();
}
@Override
public void onLoaderReset(Loader<String> arg0) {
// TODO Auto-generated method stub
}
:
getLoaderManager().initLoader(0, null, this).forceLoad();
마지막으로 자세히 설명하는 부분은 그는 로더 콜백 :
public class FragmentName extends CustomFragment implements LoaderManager.LoaderCallbacks<String>
구현 방법에 대해 도움을 줄 수 있는지 알아 보겠습니다. 미리 감사드립니다.
감사합니다. 이렇게하면 문제가 해결됩니다. –