Android ListView

ArrayAdapter



    
    

 private void initArrayList() {
 private String[] datas = {"张三","李四","王五","麻子","小强"};
//        初始化适配器
        arrayAdapter = new ArrayAdapter<>(this,android.R.layout.simple_expandable_list_item_1,datas);
        listView.setAdapter(arrayAdapter);

    }

public ArrayAdapter(@NonNull Context context, @LayoutRes int resource, @NonNull T[] objects) {
        this(context, resource, 0, Arrays.asList(objects));
    }
  • ArrayAdapter第一个参数上下文,第二个参数layout, 第三个参数显示的数据

SimpleAdapter

simple_listview.xml


    
   
       
       
   



private void initSimpleList() {
        //    这三个经常是同时出现的
        List> lists;
        //    定义数据
        String[] theme = {"张三","李四","王五"};
        String[] content ={"我是张三,你好","我是李四,你好","我是王五,你好"};
        int[] imageViews = {R.mipmap.ic_launcher,R.mipmap.ic_launcher_round,R.mipmap.ic_launcher};
        lists = new ArrayList<>() ;
        for (int i = 0;i < theme.length;i++) {
            Map map = new HashMap() ;
            map.put("image",imageViews[i]);
            map.put("theme",theme[i]);
            map.put("content",content[i]);
            lists.add(map);
        }

        simpleAdapter = new SimpleAdapter(this,lists,R.layout.simple_listview,new String[]{"image","theme","content"},
                new int[]{R.id.image1,R.id.text1,R.id.text2});
        listView.setAdapter(simpleAdapter);
    }

    public SimpleAdapter(Context context, List> data,
            @LayoutRes int resource, String[] from, @IdRes int[] to) {
}
  • SimpleAdapter 第一个参数 上下文
  • 第二个参数 含有Map对象的 List
  • 第三个参数 layout
  • 第四个参数 new String[]{}数组 数组的里面的每一项要与第二个参数中的存入map集合的的key值一样,一 一对应
  • new int[]{}数组,数组里面的第三个参数中的item里面的控件id。

你可能感兴趣的:(Android ListView)