Android应用中BaseAdapter适配器

1.什么是适配器
   适配器:在安卓中,顾名思义就是把数据变成符合界面风格的形式,并且通过ListView显示出来。也就是说适配器是数据和界面之间的桥梁。
   适配器在数据库中的数据(后台)和显示页面(前端)中充当一个转换器的角色,数据库中的数据(如数组,链表,数据库,集合等)通过适配器变成类手机页面能够正常显示的数据。可以看作是界面数据绑定的一种理解。假设把数据、适配器和ListView(页面)比喻成一个MVC模式的话,那么适配器(Adapter)在这中间就充当了Controller的角色。
   
2.为什么对象设置数据源   
   一般是为ListView提供数据的转换,当然GridView[网格视图]、Spinner[下拉列表]、Gallery[画廊]、ViewPage等都需要使用适配器来为其设置数据源。
   
3.ArrayAdapter示范:
   使用数组适配器输出相对应的数据到ListView中
   
1、创建Android工程,后在布局文件中定义一个ListView,并且设置好相关属性。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ListView
        android:id="@+id/list_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></ListView>
</LinearLayout>

2、在activity类中书写代码

 package com.example.listviewtest;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class MainActivity extends AppCompatActivity {

    private String[] data={"apple","banana","orange","watermalon","pear","grape","pineapple","strawberry",
    "cheery","mango","apple","banana","orange","watermalon","pear","grape","pineapple","strawberry", "cheery","mango"
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        //创建数组适配器对象,并且通过参数设置类item项的布局样式和数据源
        //android.R.layout.simple_list_item_1是android内置的布局文件,里面只有一个TextView,可用于简单的显示一个文本
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                MainActivity.this,android.R.layout.simple_list_item_1,data);

        //获取布局文件中的ListView控件对象
        ListView listView = (ListView)findViewById(R.id.list_view);

        //把数组适配器加载到ListView控件中
        listView.setAdapter(adapter);
    }
}

3、运行结果:这样不需要我们自己定义TextView控件中的内容,通过数组适配器实现了这一个目的。

参考:https://www.cnblogs.com/demoMeng/p/6115289.html
Android应用中BaseAdapter适配器