SimpleAdapter的学习理解

来源:互联网 发布:宜家衣柜 知乎 编辑:程序博客网 时间:2024/05/21 08:51

学习SimpleAdapter

1. SimpleAdapter简介

SimpleAdapter(父类:BaseAdapter),跟名字一样,一个简单的适配器,既为简单,就只是被设计来做简单的应用的,比如静态数据的绑定。

2. 如何使用
要使用一个他人写好的东西,首先第一步就是需要了解那个工具的构造,和使用方法
SImpleAdapter一共需要五个参数
SimpleAdapter(参数1,参数2,参数3,参数4,参数5)

  • 第一个参数 表示访问整个android应用程序接口,基本上所有的组件都需要
  • 第二个参数表示生成一个Map(String ,Object)列表选项
  • 第三个参数表示界面布局的id 表示该文件作为列表项的组件
  • 第四个参数表示该Map对象的哪些key对应value来生成列表项
  • 第五个参数表示来填充的组件 Map对象key对应的资源一依次填充组件 顺序有对应关系
    例子如下:
//用户自定义的布局 Simple_item.xml<?xml version="1.0" encoding="utf-8" ?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_table_laytout"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal"    tools:context="com.text.allen.simpleadapter.MainActivity">            <TextView android:id="@+id/Name"                android:layout_width="match_parent"                android:layout_height="50dp"                android:textColor="#f0f"                android:paddingLeft="10dp"/>            <ImageView android:id="@+id/Picture"                android:layout_height="50dp"                android:layout_width="50dp"              android:layout_alignParentRight="true"                /></RelativeLayout>----------------加载-------------------public class MainActivity extends AppCompatActivity {    private String[] names=new String[]{"cat","dog","elephant","lion","monkey","tiger"};    private int[] imageIds=new int[]{            R.drawable.cat,            R.drawable.dog,            R.drawable.elephant,            R.drawable.lion,            R.drawable.monkey,            R.drawable.tiger    };    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        List<Map<String,Object>>listItems=new ArrayList<Map<String,Object>>();        for(int i=0;i<names.length;i++){            Map<String,Object> listItem=new HashMap<String, Object>();            listItem.put("Name",names[i]);            listItem.put("Picture",imageIds[i]);            listItems.add(listItem);        }//-------------------重点使用方法        SimpleAdapter simpleAdapter=new SimpleAdapter(this,            listItems,            R.layout.simple_item,                new String[]{"Name","Picture"},                new int[] {R.id.Name,R.id.Picture});        ListView list=(ListView)findViewById(R.id.mylist);        list.setAdapter(simpleAdapter);        list.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                Toast toast=Toast.makeText(MainActivity.this,names[position],Toast.LENGTH_LONG);                toast.show();            }        } );    }}

3.效果图
类似如下的页面

原创粉丝点击