配适器有两种
1:ArrayAdapter
2:SimpleAdapter
第一种比较简单 第二种对我来说比价难 所以有了注释哈哈 我还是没有写注释的好习惯呀~~~
直接贴代码好了
package com.example.admin.test_0307_2;
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 {
private ListView listView;
private ArrayAdapter arr_Adapter;
private SimpleAdapter sim_adapter;
private List<Map<String,Object>> datalist;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
<span style="background-color: rgb(204, 204, 255);">//这里吧data定义w位一个包含Map的数组 用ArrayList装;</span>
datalist=new ArrayList<Map<String,Object>>();
listView= (ListView) findViewById(R.id.listView);
<span style="color:#6666cc;"> </span>
<span style="background-color: rgb(204, 204, 255);"> /*
SimpleAdapter()的五个参数:
1 上下文;
2 数据也就是datalist; 这里的包含的是Map<String,Object>
3 来源 也就是我们建立的item;
4 所以这里就是 datalist中 Map<>对应的String
5 同上 这里对应的 是Object 通过查找id来获得
<span style="font-family: Arial, Helvetica, sans-serif;">*/</span></span>
sim_adapter=new SimpleAdapter(this,getdata(),R.layout.item,
new String[]{"pic","text"},new int[]{R.id.imageView,R.id.textView});
listView.setAdapter(sim_adapter);
}
<span style="background-color: rgb(204, 204, 255);">/*
获得datalist的方法
1建立一个Map 定义Map<String,Object> map =new HashMap<String,Object>()!!!这里别忘记();
2向其中添加 对应的String 和对应的value
3然后把一个个map添加进datalist
4返回需要的类型对应的datalist
*/</span>
private List<Map<String,Object>> getdata() {
for(int i=0;i<10;i++){
Map<String,Object> map =new HashMap<String,Object>();
map.put("pic",R.drawable.lufei2);
map.put("text",i+"个路飞看着你"+i+i+i);
datalist.add(map);
}
return datalist;
}
}
xml
很简单一个ImageView还有一个TextView
加油吧少年~