Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中从光标填充微调器_Android - Fatal编程技术网

android中从光标填充微调器

android中从光标填充微调器,android,Android,今天我已经找了一段时间了。这一切看起来很容易,但我从来没有让它发挥作用。我想用光标填充微调器。我一直在尝试使用SimpleCursorAdapter来实现这一点,因为很多网站都说我会这么做,但我从未让它发挥作用。告诉我这有多容易:) 谢谢你的时间 我的光标 Cursor cursor = db.query(DATABASE_TABLE_Clients, new String[] {"_id", "C_Name"}, null, null, null, null, "C_Name"); 我的纺纱

今天我已经找了一段时间了。这一切看起来很容易,但我从来没有让它发挥作用。我想用光标填充微调器。我一直在尝试使用SimpleCursorAdapter来实现这一点,因为很多网站都说我会这么做,但我从未让它发挥作用。告诉我这有多容易:)

谢谢你的时间

我的光标

Cursor cursor = db.query(DATABASE_TABLE_Clients, new String[] {"_id", "C_Name"}, null, null, null, null, "C_Name");
我的纺纱机

(Spinner) findViewById(R.id.spnClients);
我的代码

Cursor cursor_Names = SQLData.getClientNames();
startManagingCursor(cursor_Names);

String[] columns = new String[] { "C_Name" };
int[] to = new int[] { R.id.txt_Address };

SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_dropdown_item, cursor_Names, columns, to);
Spinner spnClients = (Spinner) findViewById(R.id.spnClients);
spnClients.setAdapter(mAdapter);

我在代码中没有看到您的下拉列表视图。比如:

mAdapter.setDropDownViewResource(R.layout.spinner_view_dropdown);

当然,您需要在res/layout目录中有一个spinner\u view\u dropdown.xml文件。

以下代码解决了我的问题。我缺少。setDropDownViewResource。在那之后,我使用了简单的\u微调器\u下拉列表\u项目,所以我不必自己做布局

    Cursor cursor_Names = SQLData.getClientNames();
    startManagingCursor(cursor_Names);

    String[] columns = new String[] { "C_Name" };
    int[] to = new int[] { android.R.id.text1 };

    SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, cursor_Names, columns, to);
    mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    Spinner spnClients = (Spinner) findViewById(R.id.spnClients);
    spnClients.setAdapter(mAdapter);
我已经做到了

    empresasSpinner = (Spinner) findViewById(R.id.empresasSpinner);

  ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
                    android.R.layout.simple_spinner_item, empresasAll.toArray(new EntidadObject[0]));                
            empresasSpinner.setAdapter(spinnerArrayAdapter);
一种简单的DTO

public class EntidadObject {
    private int id;
    private String nombre;
//GETTES and SETTERS
}        
零件刀

public class EntidadDao {
             //...

        public List<EntidadObject> getEmpresas() {
                Cursor cursor = sqLiteDatabase.rawQuery("SELECT * FROM empresas", null);
                List<EntidadObject> entidadObjects = new ArrayList<EntidadObject>();
                cursor.moveToFirst();
                do {
                    EntidadObject entidadObject = new EntidadObject();
                    entidadObject.setId(cursor.getInt(0));
                    entidadObject.setNombre(cursor.getString(1));

                    entidadObjects.add(entidadObject);
                } while (cursor.moveToNext());
                return entidadObjects;
            }
   }

您能向我们展示完整的代码吗,特别是您对SimpleCorsOrAdapter的使用?添加了代码。如何使用列和to是我不懂的。我已经测试了很多不同的值,但是它只生成一个带有单选按钮的空微调器。
EntidadObject eo = (EntidadObject)empresasSpinner.getSelectedItem();
              eo.getId();