阅读量:0
在Android中,Spinner的适配器通常有两种选择,分别是ArrayAdapter和CursorAdapter。
- ArrayAdapter:适用于静态数据源,比如数组或者列表。可以通过在代码中定义数组或集合来创建ArrayAdapter,并将其设置给Spinner。
示例代码:
String[] data = {"Item 1", "Item 2", "Item 3"}; ArrayAdapter<String> adapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_item, data); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter);
- CursorAdapter:适用于动态数据源,比如从数据库中查询出的数据。可以通过使用LoaderManager和CursorLoader来异步加载数据,并将CursorAdapter设置给Spinner。
示例代码:
Cursor cursor = getContentResolver().query(uri, projection, selection, selectionArgs, sortOrder); CursorAdapter adapter = new SimpleCursorAdapter(context, android.R.layout.simple_spinner_item, cursor, fromColumns, toViews); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter);
根据数据源的不同,选择合适的适配器可以更方便地显示数据源中的内容,并提升用户体验。