public class MainActivity extends Activity { private GridView gv; private SimpleAdapter sim_adapter; private List<Map<String,Object>>dataList; @Override? ? protected void onCreate(Bundle savedInstanceState) {? ? ? ? super.onCreate(savedInstanceState);? ? ? ? setContentView(R.layout.activity_main);? ? ? ??? ? ? ??? ? ? ? gv=(GridView) findViewById(R.id.gridView1);? ? ? ??? ? ? ? /*? ? ? ? ?* 1、準(zhǔn)備數(shù)據(jù)源? ? ? ? ?* 2、新建適配器? ? ? ? ?* 3、GridView加載適配器? ? ? ? ?* 4、GridView配置事件監(jiān)聽器? ? ? ? ?* 5、視圖加載適配器? ? ? ? ?*/? ? ? ? dataList=new ArrayList<Map<String,Object>>();? ? ? ? sim_adapter=new SimpleAdapter(this, getData(), R.layout.item, new String[]{"img","text"}, new int[]{R.id.imageView1,R.id.textView1});? ? ? ? gv.setAdapter(sim_adapter);? ? ? ??? ? }? ? private List<Map<String,Object>> getData(){? ? int[] img={R.drawable.img1,R.drawable.img2,R.drawable.img3,R.drawable.img4,R.drawable.img5,R.drawable.img6};? ? String[] imgName={"圖片1","圖片2","圖片3","圖片4","圖片5","圖片6"};? ? Map<String,Object>map=new HashMap<String, Object>();? ? ? ? for(int i=0;i<img.length;i++){? ? map.put("img", img[i]);? ? map.put("text", imgName[i]);? ? dataList.add(map);? ? }? ? ? ? return dataList;? ? }}
1 回答
已采納

月落烏啼落日圓
TA貢獻(xiàn)20條經(jīng)驗(yàn) 獲得超9個(gè)贊
你把map的聲明放到for循環(huán)里面就對了,像下面這樣,因?yàn)槿绻幻看味悸暶饕粋€(gè)map的話,你所添加的就會是同一個(gè)對象
? ?
????for(int?i=0;i<img.length;i++){ ?????Map<String,Object>map=new?HashMap<String,?Object>(); ????map.put("img",?img[i]); ????map.put("text",?imgName[i]); ????dataList.add(map); ????}
- 1 回答
- 1 關(guān)注
- 1384 瀏覽
添加回答
舉報(bào)
0/150
提交
取消