ArrayAdapter数组适配器用于绑定格式单一的数据,数据源可以是集合或者数组

列表视图(ListView)以垂直的形式列出需要显示的列表项。

实现过程:新建适配器->添加数据源到适配器->视图加载适配器

第一种:直接用ListView组件创建

列表每一行只有一行文字

效果如图:

activity_list布局:

<?xml version="1.0" encoding="utf-8"?>    android:entries="@array/list">    android:entries="@array/list">    
 
在res/layout的string.xml中添加数组资源的名称
    ArrayAdapter数组适配器               第一行        第二行        第三行        第四行        第五行        第六行        第七行        第八行        第九行        第十行        第十一行        第十二行        第十三行                 第一行        第二行        第三行        第四行        第五行        第六行        第七行        第八行        第九行        第十行        第十一行        第十二行        第十三行      

MainActivity.java:

 
package com.ied.arrayadapter;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.ListView;import android.widget.Toast;public class MainActivity extends AppCompatActivity {    ListView listView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_list);        listView = (ListView) findViewById(R.id.lv_list);        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                String result = parent.getItemAtPosition(position).toString();//获取选择项的值                Toast.makeText(MainActivity.this,"您点击了"+result,Toast.LENGTH_SHORT).show();            }        });    }} ListView listView;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_list);        listView = (ListView) findViewById(R.id.lv_list);        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                String result = parent.getItemAtPosition(position).toString();//获取选择项的值                Toast.makeText(MainActivity.this,"您点击了"+result,Toast.LENGTH_SHORT).show();            }        });    }}

第二种:

三个参数 (使用android自带的 android.R.layout.simple_list_item_1)
activity_list布局:
<?xml version="1.0" encoding="utf-8"?>    

MainActivity.java:

package com.ied.arrayadapter;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.Toast;public class MainActivity extends AppCompatActivity {    private ListView listView;    private ArrayAdapter arrayAdapter;    private SimpleAdapter simpleAdapter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_list);        listView = (ListView) findViewById(R.id.lv_list);        String data[] = {"1","2","3","4","5","6","7","8","9","10","11","12","13"};           //创建数组适配器,作为数据源和列表控件联系的桥梁           //第一个参数:上下文环境           //第二个参数:当前列表项加载的布局文件           //第三个参数:数据源        arrayAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,data);        //listview视图加载适配器        listView.setAdapter(arrayAdapter);        //为列表视图中选中的项添加响应事件        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                String result = parent.getItemAtPosition(position).toString();//获取选择项的值                Toast.makeText(MainActivity.this,"您点击了"+result,Toast.LENGTH_SHORT).show();            }        });    }}arrayAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,data);        //listview视图加载适配器        listView.setAdapter(arrayAdapter);        //为列表视图中选中的项添加响应事件        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                String result = parent.getItemAtPosition(position).toString();//获取选择项的值                Toast.makeText(MainActivity.this,"您点击了"+result,Toast.LENGTH_SHORT).show();            }        });    }}

四个参数:自定义了TextView

activity_info布局:

<?xml version="1.0" encoding="utf-8"?>    

activity_list布局:

<?xml version="1.0" encoding="utf-8"?>    

MainActivity.java:

package com.ied.arrayadapter;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.ListView;import android.widget.Toast;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private ListView listView;    private ArrayAdapter arrayAdapter;    private ArrayList data;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_info);        listView = (ListView) findViewById(R.id.lv_list);        initData();//数据源      //  String data[] = {"1","2","3","4","5","6","7","8","9","10","11","12","13"};        //创建数组适配器,作为数据源和列表控件联系的桥梁        arrayAdapter = new ArrayAdapter(this,R.layout.activity_list,R.id.tv_info,data);        //listview视图加载适配器        listView.setAdapter(arrayAdapter);        //为列表视图中选中的项添加响应事件        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                String result = parent.getItemAtPosition(position).toString();//获取选择项的值                Toast.makeText(MainActivity.this,"您点击了"+result,Toast.LENGTH_SHORT).show();            }        });    }    private void initData(){        data = new ArrayList();        for (int i=0;i<13;i++){            data.add("第"+(i+1)+"行");        }    }}

第三种:自定义ArrayAdapter数组适配器

 

 

 

源代码下载

密码:d4qm

 

更多相关文章

  1. 第一行代码 Android(安卓)第 2 版 读书笔记
  2. ym—— Android(安卓)5.0学习之定义阴影
  3. android 生成二维码图片
  4. Android之-----GridView使用的方法总结
  5. Android中汉字转拼音的内存优化处理
  6. Android开发04—Android常用高级控件(上)
  7. 把Unity作为Android的子视图
  8. scrollTo 以及 scrollBy方法使用说明
  9. Android中SparseArray性能优化的使用方法

随机推荐

  1. Android 隐藏显示软键盘的终极方法
  2. Android(安卓)插件化原理 完胜360插件框
  3. 【30篇突击 android】源码统计 十五
  4. android viewpaper嵌套viewpaper,滑动问题
  5. android6.0 源码 系统应用之Music代码之
  6. android编译时没有规则可以创建“out/tar
  7. android deal with big images
  8. android 外部启动activity,自定义action,ac
  9. Android拍照后图片旋转问题
  10. Android 自定义View 基础知识