2013年6月29日土曜日

CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0

Cursorを使用した際に以下のエラーが発生しました。

06-29 21:37:46.693: E/AndroidRuntime(18071): FATAL EXCEPTION: main
06-29 21:37:46.693: E/AndroidRuntime(18071): android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
06-29 21:37:46.693: E/AndroidRuntime(18071): at android.database.AbstractCursor.checkPosition(AbstractCursor.java:406)
06-29 21:37:46.693: E/AndroidRuntime(18071): at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:136)
06-29 21:37:46.693: E/AndroidRuntime(18071): at android.database.AbstractWindowedCursor.getInt(AbstractWindowedCursor.java:68)
06-29 21:37:46.693: E/AndroidRuntime(18071): at android.database.CursorWrapper.getInt(CursorWrapper.java:106)
・・・

どうやらカーソルの検索結果が見つからない状態でカーソルを移動させたためのようです。

    String str= ローカル変数以外の変数、finalやstatic変数など
    // コンテンツプロバイダのURI取得
    Cursor c = getContentResolver().query(str・・・

カーソルがNULLか0件でないか確認する処理が必要です。

閉じるのをお忘れなく

0 件のコメント:

コメントを投稿