1.模拟器上运行结果图
2.在activity_main.xml布局文件中添加ListView组件:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
<ListView
android:id="@+id/list1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="@color/black"
android:dividerHeight="1dp">
</ListView>
</LinearLayout>
3.在layout目录下新建一个布局文件list_item_layout.xml,添加一个ImageView组件及两个TextView组件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/app_name" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"/>
<TextView
android:id="@+id/dex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16sp"/>
</LinearLayout>
</LinearLayout>
4.在MainActivity.java中添加SimpleAdapter代码:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String[] nam={"张三","王五","李四"};
String[] des={"唱歌","跳舞","打球"};
int[] ico={R.mipmap.ic_launcher,R.mipmap.ic_launcher,R.mipmap.ic_launcher};
String[] str= {"nam","ico","des"};
int[] id= {R.id.name,R.id.icon,R.id.dex};
ListView vie= findViewById(R.id.list1);
List<Map<String,Object>> lis=new ArrayList<>();
for(int i = 0; i<nam.length; i++){
Map<String,Object> item=new HashMap<>();
item.put("ico",ico[i]);
item.put("nam",nam[i]);
item.put("des",des[i]);
lis.add(item); }
SimpleAdapter ada=new SimpleAdapter(this,lis,R.layout.list_item_layout,str,id);
vie.setAdapter(ada);
}
}
SimpleAdapter要用到5个参数,第1个参数是应用接口,第2个参数是list集合,第3个参数是界面布局id,第4个参数是元素数组,第5个参数是组件id数组。