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

问题描述 投票:116回答:11

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

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

android adapter android-adapter
11个回答
42
投票

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

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


0
投票

已经有多个答案,但我想给出不同的答案。

适配器意味着你可以为它的桥接提供商。

适配器是一组数据和显示数据的AdapterView之间的链接。


0
投票

最后,适配器对于执行报告非常有用。如果想要显示某些信息的报告,可以使用此工具在视图上显示数据。


27
投票

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

Adapter是一个接口,其实现提供数据并控制该数据的显示。 ListViews拥有完全控制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(){} 

}

让我们定义一个适配器:

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

23
投票

我想分享一下我的理解。

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

An analogy

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

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

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


8
投票

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

Examples

  • 一个视图,显示垂直滚动列表中的项目。这些物品来自与此观点相关的ListAdapter
  • ListAdapter定义列表中各行的布局,并通过ListViewsetAdapter()方法向ListView提供数据。
  • Android提供了几种标准适配器;最重要的是ArrayAdapterCursorAdapter
  • ArrayAdapter可以处理基于数组或列表的数据。
  • SimpleCursorAdapter可以处理数据库相关数据。

4
投票

适配器基本上用于传递内容。您可能在每个应用程序中拥有的一个适配器是CursorAdapter,它使您能够从数据库查询中提供游标给出的内容。 ListView几乎总是某种适配器。


4
投票

适配器充当AdapterView与该视图的基础数据之间的桥梁。适配器提供对数据项的访问,并负责为数据集中的每个项创建视图。

适配器是将View与某种数据源连接的智能方法。通常,您的视图将是ListView,数据将以CursorArray的形式出现。所以适配器作为CursorAdapterArrayAdapter的子类。


2
投票

适配器管理数据模型并使其适应列表视图中的各个行。它扩展了BaseAdapter类。

列表视图中的每一行都包含一个可以根据需要复杂的布局。列表视图中的典型行在左侧有一个图像,在中间有两个文本行。


2
投票

什么是适配器?

适配器是一组数据和显示数据的AdapterView之间的链接。

AdapterView

AdapterViewsViewGroups,显示适配器给它的子视图。 AdapterView的一个例子是ListView

适配器还提供显示AdapterView中数据的子视图。适配器负责提供数据并创建表示每个项目的视图。

适配器获取数据并将其与子视图一起传递给显示子视图和数据的父AdapterView


0
投票

适配器仅用于实现listview概念。不仅用于显示数据列表,还用于显示某些自定义视图。假设客户想要使用具有更多textview(任何其他视图)的列表,那么我们必须在Android中使用Adapter视图。

© www.soinside.com 2019 - 2024. All rights reserved.