《温馨提示:可以创建相应布局,复制粘贴相应代码,查看视图》
、、当每页布局资源中的需要显示的TextView的id的值
构造方法:SimpleAdapter(Contenxt context, List<? extend Map<String ?>> data, int resource[] from, to)
context:上下文:
data:数据源,是一个map对象列表
resource:每一项布局资源id
from:在map对象中存储key
to:每一项布局资源中需要显示文本的TextView的id数组
、、第一步:创建参数List<? extend Map<String ?>> data:
List<Map<String, ?>> dataList = new ArrayList<>(); for(int i=0; i<50; i++){ Map<String,String> map = new HashMap<>(); map.put("name","张三" +i); map.put("sex", i%2==0?"男":"女"); map.put("age", 10+i+" "); dataList.add(map); }
、、第二步:创建第二个参数布局资源 int resource[] item_userinfo.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/tv_name" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/tv_age" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/tv_sex" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>//完成参数构建:package com.example.administrator.myapplication2; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class MainActivity extends AppCompatActivity { ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); /*simpleAdapter()的构造方法, public SimpleAdapter(Context context, List<? extends Map<String, ?>> data, @LayoutRes int resource, String[] from, @IdRes int[] to)*/ listView = (ListView) findViewById(R.id.demo_list_view); List<Map<String, ?>> dataList = new ArrayList<>(); for (int i = 0; i < 50; i++) { Map<String, String> map = new HashMap<>(); map.put("name", "张三" + i); map.put("sex", i % 2 == 0 ? "男" : "女"); map.put("age", 10 + i + " "); dataList.add(map); } String[] from = {"name", "sex", "age"}; int[] to = {R.id.tv_name, R.id.tv_sex, R.id.tv_age}; SimpleAdapter simpleAdapter = new SimpleAdapter(this, dataList,R.layout.support_simple_spinner_dropdown_item, from, to); listView.setAdapter(simpleAdapter); } }