2017-07-21 9 views
2

SQLiteデータベースから1列を取得し、その情報を配列に追加したいとします。 私はfrom arraycursorと2つのJavaクラスを使用します。 私のsqliteデータベースには別のページのような問題はありません。情報を取得できました。 情報が表示されるのを待っているうちに、Androidアプリが強制終了します。配列に追加中に強制終了する

私の方法(displayrooidad):

public String displayrooidad(int row) { 
    Cursor cu = db.query(DB_TBL_ROOIDAD, null, null, null, null, null, null, null); 
    cu.moveToPosition(row); 
    String content = cu.getString(1); 
    return content; 
} 

私のJavaクラス SQLiteHelper:データベースに接続するためのJavaClassです。 オープンとクローズの方法正しく動作します。

public class Rooidad extends AppCompatActivity { 
    Spinner sp; 
    TextView txt; 
    SQLiteHelper sq; 
    String[] myarray; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
     setContentView(R.layout.rooidad); 
     // sp=(Spinner)findViewById(R.id.sp); 
     txt = (TextView)findViewById(R.id.test); 
     sq=new SQLiteHelper(getBaseContext()); 
     sq.open(); 
     int row =sq.countofrow(); 
     myarray=new String[row]; 
     for(int teller=0;teller<=row;teller++){ 
      String tittle = sq.displayrooidad(teller); 
      myarray[teller]=tittle.toString(); 
     } 
     sq.close(); 
     txt.setText(myarray[4].toString()); 
    } 
} 
+0

あなたの 'logcat'を投稿してください。 – Meet

+0

あなたの投稿を編集して文法を改善しましたが、2つのコードブロック間の文章についてはわかりませんが、少し分かりますか? – Nathan

+0

@Nathanありがとうございます。私の文章を変更しました –

答えて

2

私はあなたのtabだけrowの要素ではないrow+1を持っているので、あなたがteller < rowを置く必要があると思います。

+0

非常にありがとうございました。私は削除しました "=" –

+0

@ M.borjianその問題​​を修正した場合は、答えを受け入れることができます:) – Nathan

関連する問題