1

これが私の短いコードです。テーブルに10行を挿入していますが、ループが完了した後、「0 Net 0」のような同じ視覚化を10回行うのはなぜですか? //テーブル構造

 String creater = "CREATE TABLE IF NOT EXISTS est (ID INTEGER PRIMARY KEY AUTOINCREMENT,codigo VARCHAR(10),"
    + "produto VARCHAR(1000), "
    + "qtd VARCHAR(10) ) ";
    sql.execSQL(creater);

//挿入のループ

   for(int i=0;i<10;i++)
    {
    ContentValues values=new ContentValues(); 
    values.put("codigo", String.valueOf(i));
    values.put("produto", "Net");
    values.put("qtd", String.valueOf(i));
    sql.insert("est", null, values);
    }

//配列リスト

public  ArrayList<String>  estoque(SQLiteDatabase sql)
     {
    ArrayList<String> lst = new ArrayList<String>();
    try{
    String cmd ="select * from est";
    Cursor c = sql.rawQuery(cmd,null);
    c.moveToFirst();
    int i=0;
    while(c.getCount() > i )
    {
    lst.add(c.getString(1)+"|"+c.getString(2)+"|"+c.getString(3));
    i++;
    }
    }catch(Exception ex){Log.e("ERROR", ex.getStackTrace().toString());}
    return lst;
    };

//リストビュー

 ListView  listview =(ListView)findViewById(R.id.listview);
ArrayList<String> estoque = new db().estoque(sql);
ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, estoque);
adapter1.setDropDownViewResource(android.R.layout.simple_list_item_1);
listview.setAdapter(adapter1);

//視覚化 "0 Net 0"10 回同じ。何か問題がありますか?助けてください。

4

1 に答える 1