getLoaderManager().initLoader() не принимает 'this' в качестве аргумента, хотя класс (ListFragment) без вспомогательных библиотек
Я видел предыдущий вопрос
import android.app.ListFragment;
import android.app.LoaderManager.LoaderCallbacks;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v4.app.LoaderManager;
import android.support.v4.content.Loader;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class Myfragment extends ListFragment implements
LoaderManager.LoaderCallbacks<Cursor> {
View v;
private int id = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
v = inflater.inflate(R.layout.job_layout, container);
getListView().setAdapter(new Jobs_Adapter());
return inflater.inflate(R.layout.job_layout, container);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
// getLoaderManager().initLoader(id, null,
// (android.app.LoaderManager.LoaderCallbacks<Cursor>) this);
// Manager().initLoader(0, null,
// (android.app.LoaderManager.LoaderCallbacks<Cursor>) this);
getLoaderManager().initLoader(id, null,this);
}
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
return null;
}
@Override
public void onLoadFinished(Loader<Cursor> arg0, Cursor arg1) {
// TODO Auto-generated method stub
}
@Override
public void onLoaderReset(Loader<Cursor> arg0) {
// TODO Auto-generated method stub
}
}
Я видел все связанные вопросы, все предлагали использовать библиотеки поддержки, но что, если кто-то не хочет использовать библиотеки поддержки и рекомендуется ли это? Я использую отдельный фрагмент вместо использования его внутри FragmentActivity
1 ответ
Решение
Проблема в том, что вы смешиваете обычные / вспомогательные классы. Поскольку вы не хотите использовать библиотеку поддержки, просто замените
import android.support.v4.app.LoaderManager;
import android.support.v4.content.Loader;
с
import android.app.LoaderManager;
import android.content.Loader;