SimpleAdapter的参数

今天写实验作业的时候遇到了SimpleAdapter的问题,发现自己理解上有一些偏差,所以写一篇Blog来记录一下。先贴上代码。
MainActivity.java

packagecom.example.vincelee.interfacedemo;
importandroid.content.Context;
importandroid.support.v7.app.AppCompatActivity;
importandroid.os.Bundle;
importandroid.widget.BaseAdapter;
importandroid.widget.Gallery;
importandroid.widget.ImageSwitcher;
importandroid.widget.SimpleAdapter;
importjava.util.ArrayList;
importjava.util.HashMap;
importjava.util.List;
importjava.util.Map;
public classMainActivityextendsAppCompatActivity {
//声明ImageSwitcher与图片数组
privateImageSwitcherimgs;
privateString[]name={"ONE","TWO","THREE"};
private int[]pic={
R.drawable.drawable_1,
R.drawable.drawable_2,
R.drawable.drawable_3
};
@Override
protected voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
List> list =newArrayList>();
for(inti =0;i
Map galleryitem =newHashMap();
galleryitem.put("img",pic[i]);
galleryitem.put("Title",name[i]);
list.add(galleryitem);
}
//获取ImageSwitcher对象和Gallery对象
imgs= (ImageSwitcher)findViewById(R.id.switcher);
Gallery ga = (Gallery)findViewById(R.id.gallery);
//设置Adapter
SimpleAdapter sad =newSimpleAdapter(this,list,R.layout.galleryitemoverride,newString[]{"img","Title"},new int[]{R.id.img,R.id.Title});
ga.setAdapter(sad);
}
}

galleryitemoverride.xml

android:orientation="vertical"android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/img"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/Title"/>

activity_main


    
    


SimpleAdapter的参数_第1张图片
效果图,资源图片网上随便找的,侵删

学习以后的理解是:
第一个参数是context;第二个参数是一个Map的List,第三个参数是布局资源的ID,第四个是我put到Map里的列名;第五个是在布局文件中列名对应的视图id。

SimpleAdapter的参数_第2张图片

Android官方对SimpleAdapter的参数解释

你可能感兴趣的:(SimpleAdapter的参数)