0

リストビューに表示したいデータベースがあります。私には仕事があります。コードは次のとおりです。

Cursor cursor = myDataBase
                    .rawQuery(
                            "SELECT * FROM Accelerometer where cur_timestamp<'2012-09-04 11:36:25'",
                            null);          

            while (cursor.moveToNext()) {
                // Which column you want to exprort
                String arrStr[] = { cursor.getString(0)+" | " + cursor.getString(1)+" | " + cursor.getString(2)+" | "+ cursor.getString(3)+" | " + cursor.getString(4)+"\n" };
                if (arrStr.length != 0) {
                    Log.d("TravellerLog :: ", Arrays.toString(arrStr));
                    //data.setText(Arrays.toString(arrStr));
                    ListView listView = (ListView) findViewById(R.id.listView1);
                    // a listát berakni aegy arraylist-be
                     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1,
                             arrStr);
                     listView.setAdapter(adapter);

                } else {
                    Log.e("TravellerLog :: ", "Üres a tömb!");
                }
            }

            cursor.close();

機能させるには、コードの何を変更する必要がありますか?必要なすべての行を一覧表示するには 回答ありがとうございます!

4

2 に答える 2

1
l.setOnItemClickListener(new OnItemClickListener(){
    public void onItemClick(AdapterView<?> a, View v, int pos,long id){
        Cursor cursor = (Cursor) a.getItemAtPosition(pos);

        I.putExtra("ID", cursor.getInt(cursor.getColumnIndex("_id")));

       // more code here

データベースに接続し、選択クエリを使用してデータベースから値を取得します....

于 2012-09-06T12:56:18.043 に答える
0

while ループ内でリスト ビューとアダプターを初期化しています。これは、db 行ごとに新しいリストを作成することを意味します。

List<String> arrStr = new Vector<String>();
while (cursor.moveToNext()) {
            // Which column you want to exprort
            arrStr.add(cursor.getString(0)+" | " + cursor.getString(1)+" | " + cursor.getString(2)+" | "+ cursor.getString(3)+" | " + cursor.getString(4)+"\n" );
            if (arrStr.length != 0) {
                Log.d("TravellerLog :: ", Arrays.toString(arrStr));
                //data.setText(Arrays.toString(arrStr));
            } else {
                Log.e("TravellerLog :: ", "Üres a tömb!");
            }
        }

        cursor.close();

 ListView listView = (ListView) findViewById(R.id.listView1);
                // a listát berakni aegy arraylist-be
                 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1,
                         arrStr);
                 listView.setAdapter(adapter);
于 2012-09-06T12:30:05.607 に答える