2015-09-30 75 views
0

我是比較新的到Android工作室很抱歉,如果這是一個快速解決Android的工作室 - 檢索數據從SQLite數據庫,並插入到微調

我試圖找回從我的數據庫把所有記錄的列將該列轉換爲arrayList,然後列表中的數據可用於填充微調器

我到目前爲止的代碼如下:

try { 
 

 
      //String sql = "INSERT INTO Inventory(NAME,AMOUNT,PRICE,AMOUNTLEFT,WEIGHT) VALUES('Apple','30','1.99','28','1.01')"; 
 
      //db.execSQL(sql); 
 
      Cursor c = db.rawQuery("SELECT NAME FROM Inventory", null); 
 
      if (c.getCount() == 0) 
 
      { 
 
       showMessage("Welcome!", "Please Add Items To Your Inventory"); 
 
      } 
 
      List InventoryList = new ArrayList(); 
 
      Integer i=0; 
 
      if(c.moveToFirst()) 
 
      { 
 
       do { 
 
        InventoryList.add(i, c.getColumnIndex("1")); 
 
        i+=1; 
 
       }while(c.moveToNext()); 
 
      } 
 
      c.close(); 
 
      db.close(); 
 
      flav1InvSpinner = (Spinner)findViewById(R.id.Combo_InvChoice1); 
 
      ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, InventoryList); 
 
      dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
 
      flav1InvSpinner.setAdapter(dataAdapter); 
 

 

 

 

 
     } 
 
     catch(Exception e) 
 
     { 
 
      showMessage("Error", "Cannot Connect To Database \n" + e.getMessage()); 
 
     }

但是組合框只顯示-1模擬器運行時 我希望它顯示「蘋果」

任何建議,我所做錯了/錯過了

謝謝

回答

0

想通了,我沒有需要c.getColumnIndex

只需要c.getString(0));

現在的作品一種享受!

相關問題