public class GirdViewActivity extends Activity implements AdapterView.OnItemClickListener {
private GridView gridView;
private SimpleAdapter simpleAdapter;
private List<Map<String,Object>> dataList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gird);
gridView = (GridView)findViewById(R.id.gridView);
//SimpleAdapter
/*
* context:上下文
* data:数据源(List<? extends Map<String,?>>data) 一个map组成的list集合
* resource:列表项的布局文件ID
* from:Map中的键名
* to:绑定数据视图中的ID,与from成对应关系
* */
dataList = new ArrayList<Map<String, Object>>();
simpleAdapter = new SimpleAdapter(this,getData(),R.layout.cell,new String[]{"cellpic","celltext"},new int[]{R.id.cellpic,R.id.celltext});
gridView.setAdapter(simpleAdapter);
gridView.setOnItemClickListener(this);
}
private List<Map<String,Object>> getData(){
for (int i = 0;i<12;i++){
Map<String,Object>map = new HashMap<String,Object>();
map.put("cellpic",R.drawable.icon);
map.put("celltext","测试"+i);
dataList.add(map);
}
return dataList;
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String text = gridView.getItemAtPosition(position)+"";
Toast.makeText(this,"position = "+position+" text"+text,Toast.LENGTH_SHORT).show();
}
}