适配器在Android中的作用是什么?

Rob*_*bin 119 android adapter android-adapter

我想知道 Android环境中何时,何地以及如何使用适配器.

来自Android开发者文档的信息对我来说不够,我想得到更详细的分析.

suc*_*nil 43

Android中的适配器基本上是UI组件和将数据填充到UI组件的数据源之间的桥梁

例如,通过使用数据源数组中的列表适配器来填充列表(UI组件).

  • 这与我从文档中获得的信息相同.但我想要一个详细的解释 (19认同)

Pra*_*t_M 28

假设您要在Android应用中显示列表.为此,您将使用ListViewAndroid提供的. ListViews实际上并不包含任何数据.它只是一个没有数据的UI元素.您可以ListView使用Android适配器填充您的s.

Adapter是一个接口,其实现提供数据并控制该数据的显示. ListView自己的适配器完全控制ListView显示器.因此适配器控制列表中显示的内容以及如何显示它.

Adapter接口包括用于将数据传送到的各种方法ListView.您可以通过实现从头开始创建自己的适配器BaseAdapter.

public class ArrayAdapter<T> extends BaseAdapter implements Filterable {

// One of the constructors
public ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects) {
    init(context, resource, textViewResourceId, Arrays.asList(objects));
}

void manyMoreMethods(){} 

}
Run Code Online (Sandbox Code Playgroud)

让我们定义一个适配器:

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
   android.R.layout.simple_list_item_1, android.R.id.text1, values);
Run Code Online (Sandbox Code Playgroud)
  • 第一个参数:上下文
  • 第二个参数:行的布局
  • 第三个参数:TextView写入数据的ID
  • 第四个参数:数据数组


Akh*_*nha 23

我想分享一下我的理解.

它是数据源和布局之间的接口(很可能是ListView).

一个类比

我们以移动充电器为例,或者更确切地说是USB电缆.线可以被认为是适配器,而数据源和布局可以分别被理解为插座(插件点)和USB端口(充电点).

在移动充电的情况下,电源可以是不同的,例如从电源,插座或笔记本电脑充电.Android中使用的适配器也是如此.可以根据应用要求改变数据源.

简而言之,Android中的适配器承载来自源(例如ArrayList<>)的数据并将其传递到布局(.xml文件).

  • 到目前为止最好的例子:D干得好! (2认同)

Luf*_*ffy 8

Android中的适配器是适配器视图(例如ListView)与该视图的基础数据之间的桥梁.想象一下没有适配器的世界会是什么样的!

例子

  • 一个视图,显示垂直滚动列表中的项目.这些项目来自ListAdapter与此视图相关联.

  • ListAdapter定义了列表中的各个行的布局和将数据提供给ListView经由所述setAdapter()的方法 ListView.

  • Android提供了几种标准适配器; 最重要的是 ArrayAdapterCursorAdapter.

  • ArrayAdapter 可以处理基于数组或列表的数据.

  • SimpleCursorAdapter 可以处理数据库相关数据.