Androidのドキュメントによると:このメソッドはAPIレベル11で非推奨になりました。
これはコードです:
class GridViewActivity_ extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.gridview);
GridView gv = (GridView)findViewById(R.id.gridview);
Cursor c = managedQuery(Contacts.CONTENT_URI,
null, null, null, Contacts.DISPLAY_NAME);
String[] cols = new String[]{Contacts.DISPLAY_NAME};
int[] views = new int[] {Android.R.id.text1};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
Android.R.layout.simple_list_item_1,
c, cols, views);
gv.setAdapter(adapter);
}
}
非推奨のコードではなく、このコードをどのように置き換えますか?
フラグメントではなく、アクティビティについて...
この素晴らしいによると チュートリアル :
public class GridViewActivity extends FragmentActivity implements LoaderManager.LoaderCallbacks<Cursor>
{
private SimpleCursorAdapter mAdapter;
@Override
public Loader<Cursor> onCreateLoader(int p1, Bundle p2)
{
return new CursorLoader(this, Contacts.CONTENT_URI, null, null, null, Contacts.DISPLAY_NAME);
}
@Override
public void onLoadFinished(Loader<Cursor> p1, Cursor cursor)
{
mAdapter.swapCursor(cursor);
}
@Override
public void onLoaderReset(Loader<Cursor> cursor)
{
mAdapter.swapCursor(null);
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO: Implement this method
super.onCreate(savedInstanceState);
setContentView(R.layout.gridview);
GridView gv = (GridView)findViewById(R.id.gridview);
String[] cols = new String[]{Contacts.DISPLAY_NAME};
int[] views = new int[]{Android.R.id.text1};
mAdapter = new SimpleCursorAdapter(this, Android.R.layout.simple_list_item_1, null, cols,views, 0);
gv.setAdapter(mAdapter);
getSupportLoaderManager().initLoader(0, null, this);
}
}
あなたはこのリンクを見ることができます: 非推奨のManagedQuery()の問題
Cursor cursor = getContentResolver().query(contentUri, null, null, null, Contacts.DISPLAY_NAME);