Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.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_Adapter_Android Adapter - Fatal编程技术网

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

什么';适配器在Android中的作用是什么?,android,adapter,android-adapter,Android,Adapter,Android Adapter,我想知道在Android环境中,适配器何时、何地以及如何使用 Android开发者文档中的信息对我来说是不够的,我希望得到更详细的分析。适配器基本上用于交付内容。每个应用程序中可能都有一个适配器CursorAdapter,它使您能够从数据库查询中传递游标给定的内容。ListView几乎总是有某种适配器。Android中的适配器基本上是UI组件和将数据填充到UI组件中的数据源之间的桥梁 例如,使用列表适配器从数据源阵列填充列表(UI组件) 适配器充当AdapterView和该视图的基础数据之间的桥

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


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)我觉得你的问题很有价值(我就是这么伤你的