Android -- ListView与ArrayAdapter、SimpleAdapter

对于ArrayAdapter,里面虽然能添加图片,但只能是相同的图片。

废话不多说:

布局&&list的item布局                                                                

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <ListView
        android:id="@+id/lv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         />

</LinearLayout>
<?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"
    android:orientation="horizontal" >

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/tv"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

程序                                                                                            

private static String[] names= {"功能1","功能2","功能3","功能4","功能5"};
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ListView lv = (ListView) findViewById(R.id.lv);
        lv.setAdapter(new ArrayAdapter<String>(this, R.layout.list_item,R.id.tv, names));
    }

--------------------------简单的分割线--------------0-0-----------------------------------------------------------

SimpleAdapter可以添加图片的哈~~每一个item都可以加自己想要的图片。

在item布局里面给imageView添加id为iv。

程序                                                                                            

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

        ListView lv = (ListView) findViewById(R.id.lv);
        List<Map<String,Object>> data = new ArrayList<Map<String,Object>>();

        Map<String,Object> map1 = new HashMap<String, Object>();
        map1.put("nameText", "第1个啦啦啦");
        map1.put("icon", R.drawable.ic_launcher);

        Map<String,Object> map2 = new HashMap<String, Object>();
        map2.put("nameText", "第2个啦啦啦");
        map2.put("icon", R.drawable.info_buse);

        Map<String,Object> map3 = new HashMap<String, Object>();
        map3.put("nameText", "第3个啦啦啦");
        map3.put("icon", R.drawable.info_duijiao);

        Map<String,Object> map4 = new HashMap<String, Object>();
        map4.put("nameText", "第4个啦啦啦");
        map4.put("icon", R.drawable.info_flash);

        data.add(map1);
        data.add(map2);
        data.add(map3);
        data.add(map4);

        lv.setAdapter(new SimpleAdapter(this, data, R.layout.list_item, new String[]{"nameText", "icon"},new int[]{R.id.tv,R.id.iv}));
    }

效果:

data为绑定的数据,list集合。R.layout.list_item,数据显示对应的布局,这是要让数据跟view对象奖励一个映射关系。from[] ,map集合里面的数据的key。to[],布局文件里面的id。

我是天王盖地虎的分割线                                                                 

源代码:http://pan.baidu.com/s/1dD1Qx01

listview学习2.zip

转载请注明出处:http://www.cnblogs.com/yydcdut

Android -- ListView与ArrayAdapter、SimpleAdapter

时间: 2024-10-12 15:59:54

Android -- ListView与ArrayAdapter、SimpleAdapter的相关文章

Android train——ListView绑定ArrayAdapter、SimpleAdapter、SimpleCursorAdapter、BaseAdapter

ListView绑定ArrayAdapter res/layout/activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout

Android新手入门2016(8)--ListView之ArrayAdapter

本文来自肥宝传说之路,引用必须注明出处! ListView是Android中经常使用的控件. 什么是列表视图,让我们先看看图: 最常见的样例就是各种菜单的下啦列表. 要实现列表,须要完毕三个要素: 1.ListView 把全部的数据按指定的格式排成列表. 列表中每一项能够称为Item(如上图This is Title). 能够想象得出,要显示列表.就要先弄成相应的格式 2.adapter 适配器就是这样的ListView可以识别的格式,当然适配器有几种.以下再细说.适配器是指定格式的数据.可是我

android ListView SimpleAdapter 带图片

main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:

android ListView 与GridView 学习总结(五)

ListView的使用总结 基本使用:   步骤:在布局文件中定义一个ListView控件-在活动中获得ListView的实例-获得适配器adapter的实例并且传入三个参数-把适配器对象传递给listview实例 public class MainActivity extends Activity{ ListView contactsView; ArrayAdapter<String> adapter; List<String> contactsList=new ArrayLis

Android ListView 下拉列表详解

ListView 是Android中最常用的视图列表,要将获得的数据显示在ListView中,需要借助于数据适配器来完成.其中最常用的适配器为 ArrayAdapter 和 SimpleAdapter.可以说适配器是连接数据源和视图界面的桥梁 ArrayAdapter 常用于数组数据,绑定的数据格式比较单一.SimpleAdapter 常用于特定的泛型集合,绑定的数据格式比较复杂. 利用适配器在视图上显示界面:  1.新建一个适配器   2.用适配器加载数据源  3.视图加载适配器 一.Arra

Android——ListView与适配器

Android--ListView与适配器 1.抽屉布局  Drawer <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.

Android ListView 适配器

ListView 的大体作用是填充数据和用户交互后产生的响应.其绑定数据方式多种,将最近学习的三种总结如下: 1.ListView 和ArrayAdapter (1)建立一个常量类Constant,放置模拟数据 1 public final class Constant { 2 //定义一个数组 3 public static final String[] str = new String[]{"东部", "西部", "南部", "北部

Android——ListView控件

本篇介绍ListView控件,这是Android中比较重要也比较复杂的控件,这里只谈到使用ViewHolder机制优化即可. 一.ListView简介 ListView是Android系统中显示列表的控件,每个ListView都可以包含很多个列表项. 二.ListView的使用 概念不多说,直接来介绍使用方法. ListView中比较复杂的是数据适配器,其作用是把复杂的数据(数组.链表.数据库.集合等)填充在指定视图界面,是连接数据源和视图界面的桥梁.常见的Android原生的适配器有Array

(转) Android ListView 详解

ListView的使用方法 ListView是Android软件开发中非常重要组件之一,基本上是个软件基本都会使用ListView ,今天我通过一个demo来教大家怎么样使用ListView组件 绘制出漂亮的列表,说道ListView就不得不说Adapter适配器,因为只有通过Adapter才可以把列表中的数据映射到ListView中. 在android的开发中最Adapter 一共可以分为ArrayAdapter<T>,BaseAdapter, CursorAdapter,HeaderVie