什么';适配器在Android中的作用是什么?
我想知道在Android环境中,适配器何时、何地以及如何使用什么';适配器在Android中的作用是什么?,android,adapter,android-adapter,Android,Adapter,Android Adapter,我想知道在Android环境中,适配器何时、何地以及如何使用 Android开发者文档中的信息对我来说是不够的,我希望得到更详细的分析。适配器基本上用于交付内容。每个应用程序中可能都有一个适配器CursorAdapter,它使您能够从数据库查询中传递游标给定的内容。ListView几乎总是有某种适配器。Android中的适配器基本上是UI组件和将数据填充到UI组件中的数据源之间的桥梁 例如,使用列表适配器从数据源阵列填充列表(UI组件) 适配器充当AdapterView和该视图的基础数据之间的桥
Android开发者文档中的信息对我来说是不够的,我希望得到更详细的分析。适配器基本上用于交付内容。每个应用程序中可能都有一个适配器CursorAdapter,它使您能够从数据库查询中传递游标给定的内容。ListView几乎总是有某种适配器。Android中的适配器基本上是UI组件和将数据填充到UI组件中的数据源之间的桥梁
例如,使用列表适配器从数据源阵列填充列表(UI组件) 适配器充当
AdapterView
和该视图的基础数据之间的桥梁。
适配器提供对数据项的访问,并负责为数据集中的每个项创建视图
适配器是将视图
与某种数据源连接起来的智能方式。通常,您的视图将是一个列表视图
,数据将以光标
或数组
的形式出现。
因此,适配器作为
CursorAdapter
或ArrayAdapter
的子类出现。适配器管理数据模型,并将其适配到列表视图中的各个行。
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(){}
}
它扩展了BaseAdapter
类
列表视图中的每一行都由一个布局组成,该布局可以是您想要的复杂程度。
列表视图中的一个典型行在左侧有一个图像,中间有两个文本行。Android中的< P>适配器是适配器视图(例如,代码> ListView < /Cube >)和该视图的底层数据之间的桥梁。 想象一下,如果没有适配器,世界会是什么样子 例子
- 在垂直滚动列表中显示项目的视图。
这些项目来自与此视图关联的
ListAdapter
定义列表中各行的布局,并 通过ListAdapter
方法将数据提供给setAdapter()
ListView
列表视图
- Android提供了几个标准适配器;最重要的是
和ArrayAdapter
CursorAdapter
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
可以基于数组或列表处理数据SimpleCursorAdapter
可以处理与数据库相关的数据假设您希望在Android应用程序中显示列表。 为此,您将使用Android提供的
ListView
。
ListView
s本身实际上并不包含任何数据。
它只是一个没有数据的UI元素。
您可以使用Android适配器填充列表视图
适配器
是一个接口,其实现提供数据并控制数据的显示。
ListView
s自己的适配器,完全控制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扩展BaseAdapter实现可过滤{
//其中一个构造器
公共ArrayAdapter(上下文上下文、int资源、int textViewResourceId、T[]对象){
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);
ArrayAdapter=新的ArrayAdapter(此,
android.R.layout.simple_list_item_1,android.R.id.text1,值);
- 第一个参数:上下文
- 第二个参数:行的布局
- 第三个参数:写入数据的
文本视图的ID
- 第四个参数:数据数组
我想分享我的理解
它是数据源和布局(很可能是ListView)之间的接口
类比
让我们以移动充电器为例,或者更确切地说是USB电缆。
导线可以被视为适配器,而数据源和布局可以分别理解为插座(插入点)和USB端口(充电点)
在移动充电的情况下,
电源可能不同,
e、 g.从电源组、插座或笔记本电脑充电。
Android中使用的适配器也是如此。
根据应用要求,数据源可能会发生变化
简言之,Android中的适配器从一个源中携带数据
(例如,
ArrayList
)
并将其传递到布局(.xml文件)。适配器仅用于实现listview概念。不仅用于显示数据列表,还用于显示某些自定义视图。假设客户想要使用包含更多文本视图(任何其他视图)的列表,那么我们必须在Android中使用适配器视图 已经给出了多个答案,但我想给出一个不同的答案
适配器意味着您可以使用它的网桥提供程序
适配器是一组数据和显示数据的AdapterView之间的链接。最后,适配器对于生成报告非常有用。如果想要显示某些信息的报告,可以使用此工具在视图上显示数据。这与我可以从文档中获得的信息相同。但是我需要一个详细的解释如果我们想要有多个活动,每个活动都有自己的列表视图,我们需要为每个活动定义一个适配器吗?这是我可以从文档中获得的相同信息。但是我想要一份详细的报告explanation@Robin当前位置你为什么不“接受”其中一个答复来庆祝你的问题提出10周年纪念日呢。就我个人而言:1)我觉得你的问题很有价值(我就是这么伤你的