Android-----Adapter

Android-----Adapter_第1张图片
看图可以得出Adapter是一个连接数据和AdapterView(ListView就是一个典型的AdapterView,后面还会学习其他的)的桥梁,通过它能有效地实现数据与AdapterView的分离设置,使AdapterView与数据的绑定更加简便,修改更加方便。

ArrayAdapter

用来绑定一个数组,支持泛型操作

 private String[] names=new String[]{"zhangsan","lisi","wangwu","zhouliu"};
    private ListView listView;
     public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        listView=(ListView)view.findViewById(R.id.listview);
        ArrayAdapter adapter=new ArrayAdapter<>(getActivity(),
                android.R.layout.simple_list_item_1
        ,names);
        listView.setAdapter(adapter);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView parent, View view, int position, long id) {
                Toast.makeText(getActivity(), names[position], Toast.LENGTH_SHORT).show();
                listener.onNameChange(names[position]);
            }

ListView使用SimpleAdapter

很多时候需要在列表中展示一些除了文字以外的东西,比如图片等。这时候可以使用SimpleAdapter。SimpleAdapter的使用也非常简单,同时它的功能也非常强大。可以通过它自定义ListView中的item的内容,比如图片、多选框等。看一个例子,实现一个每一行都有一个ImageView和TextView的ListView。

你可能感兴趣的:(Android)