listView和adapter的简单应用

原创 2015年11月19日 17:11:03

注意:本项目可以直接下载运行,下载地址在下方,非常适合新手学习的实例,谢谢支持


完整代码下载地址:http://download.csdn.net/detail/cf8833/9283351


直接贴代码:


ListActivity.java

package com.example.zzmap;


import java.util.List;
import java.util.Map;


import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.SimpleAdapter;


public class ListActivity extends Activity {
private ListView listView;
private SimpleAdapter adapter;
private List<Map<String, String>> data = null;


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.list);


listView = (ListView) findViewById(R.id.listview);
data = MyDataSource.getMaps();
adapter = new SimpleAdapter(ListActivity.this, data,
R.layout.list, new String[] { "pname", "price",
"address" }, new int[] { R.id.pname, R.id.price,
R.id.address });

listView.setAdapter(adapter);

listView.setOnItemClickListener(new OnItemClickListener() {


@Override
public void onItemClick(AdapterView<?> arg0, View v, int position,
long arg3) {
// TODO Auto-generated method stub
switch (position) {
case 0:
Log.e("WQR", "苹果");
break;
case 1:
Log.e("WQR", "西瓜");
break;
case 2:
Log.e("WQR", "梨子");
break;
default:
break;
}
}
});
}


}


MyDataSource.java


package com.example.zzmap;


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class MyDataSource {

public MyDataSource() {

}
public static List<Map<String, String>> getMaps(){
List<Map<String, String>> listMaps = new ArrayList<Map<String,String>>();
//第一条数据
Map<String, String> map1 = new HashMap<String, String>();
map1.put("pname", "苹果");
map1.put("price", "¥2.5");
map1.put("address", "合肥");

Map<String, String> map2 = new HashMap<String, String>();
map2.put("pname", "西瓜");
map2.put("price", "¥0.9");
map2.put("address", "南京");

Map<String, String> map3 = new HashMap<String, String>();
map3.put("pname", "梨子");
map3.put("price", "¥9.5");
map3.put("address", "江西");

listMaps.add(map1);
listMaps.add(map2);
listMaps.add(map3);

return listMaps;
}
}


list.xml

<?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="vertical" >


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:orientation="horizontal" >


        <TextView
            android:id="@+id/pname"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="产品名称" />


        <TextView
            android:id="@+id/price"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="产品价格" />


        <TextView
            android:id="@+id/address"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:gravity="center"
            android:text="产品产地" />
    </LinearLayout>


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


</LinearLayout>


安卓--ListView和Adapter的关系和如何使用实例

说在前面: 在做联系人列表和消息列表之类的时候经常用到listview和adapter,相信代码都会写,往上的例子也多的数不胜数,我搜了一下介绍listview和adapter之间关系的博文并不多,说...
  • u013084907
  • u013084907
  • 2016年07月08日 21:14
  • 2456

ListView和ArrayAdapter、SimpleAdapter适配器的简单使用

在Android开发中,ListView是一个非常常用的控件,当然,现在已经有RecycleView来替代它了,但ListView还是有不少人在使用的。用到ListView,就一定会用到适配器。那什么...
  • u014727709
  • u014727709
  • 2016年12月28日 16:10
  • 1883

1.0 listview的adapter中getview的三种写法

说明:以下三个例子代码摘自google 2010 I/O大会 getview的加载方法一般有以下三种种方式: 最慢的加载方式是每一次都重新定义一个View载入布局,再加载数据 public View...
  • HYM1987
  • HYM1987
  • 2015年12月07日 19:37
  • 2111

7、ListView的几种适配器及自定义适配器

ListView是我们在Android应用开发中常用的组件,它通过列表的形式展示数据,具有很强的可扩展性,通常使用还会给每一项绑定一个点击时间,用于处理相应的请求,ListView在电商的商品列表中是...
  • li460998973
  • li460998973
  • 2014年12月02日 21:41
  • 5715

Listview绘制原理 与adapter

Listview绘制原理 与adapter   ListView绘制的过程如下: 首先,系统在绘制ListView之前,将会先调用getCount方法来获取Item的个数。 之后每绘制一个It...
  • wangwei890702
  • wangwei890702
  • 2013年06月26日 16:30
  • 3682

Android listview与adapter用法(包括自定义需要的适配器)

一个ListView通常有两个职责。 (1)将数据填充到布局。 (2)处理用户的选择点击等操作。 第一点很好理解,ListView就是实现这个功能的。第二点也不难做到,在后面的学习中读者会发现,...
  • u010973529
  • u010973529
  • 2014年10月17日 15:32
  • 1764

ListView简单使用

简单的界面显示1、在layout中创建ListView
  • danfengw
  • danfengw
  • 2015年08月21日 09:03
  • 697

Android中ListView与适配器ArrayAdapter,SimpleAdapter,定义BaseAdapter适配器,ListView添加headerView,ListView滚动到最后一项

1.ListView,ArrayAdapter.简单适配器(主要用于单一的文本) 2.SimpleAdapter:构造方法SimpleAdapter(Context context,List> dat...
  • yingtian648
  • yingtian648
  • 2016年08月01日 10:41
  • 789

Android实现的ListView-ListViewAdapter(新闻列表事例)

本文中介绍的新闻列表实例出自项目一处,发表于此希望能和大家同分享、共交流,抛砖引玉,有不妥之处望请各位大侠指导。版权所有,转载请注明出处,尊重知识,敬畏劳动。 一、运行测试效果截图 二、程序说...
  • oFanJunBin
  • oFanJunBin
  • 2014年03月05日 01:05
  • 3379

Android DataBinding数据绑定技术在传统ListView中的使用简例

Android DataBinding数据绑定技术在传统ListView中的使用简例本文展示Android DataBinding数据绑定技术在ListView中的使用的简单小例子。简单起见,在Ada...
  • zhangphil
  • zhangphil
  • 2017年09月04日 10:42
  • 767
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:listView和adapter的简单应用
举报原因:
原因补充:

(最多只允许输入30个字)