【问题标题】:Android Studio - Retrieve Data From SQLite Database and insert into SpinnerAndroid Studio - 从 SQLite 数据库中检索数据并插入 Spinner
【发布时间】:2015-12-28 03:52:25
【问题描述】:

我对 Android Studio 比较陌生,如果这是一个快速修复,请见谅

我正在尝试从我的数据库中检索一列,将该列中的所有记录放入 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 我希望它显示“Apple”

关于我做错了什么/错过了什么的任何建议

谢谢

【问题讨论】:

    标签: java sqlite arraylist android-studio spinner


    【解决方案1】:

    想通了,我不需要c.getColumnIndex

    只需要c.getString(0));

    现在开始享受吧!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-03
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-18
      相关资源
      最近更新 更多