关于arrayAdapter

问题描述

| 我的应用程序中有一个带有
adapter
ListView
,我用它来显示带有
chechBox
textView
的列表
public class Mylistadapter extends ArrayAdapter<Model> {
    private LayoutInflater inflater;
    private int position;

    public int getPosition() {
        return position;
    }

    public void setPosition(int position) {
        this.position = position;
    }

    public Mylistadapter (Context context,List<Model> listMeasurement){
        super(context,R.layout.simplerow,R.id.empty,listMeasurement);
        inflater= LayoutInflater.from(context);
    }

    public View getView(int position,View convertView,ViewGroup parent){
        Model model= (Model)this.getItem(position);
        CheckBox checkBox;
        TextView textView;
    }
}
我的问题是: 我想在另一个ѭ6中显示一个
list
,这将有一个
image
,两个
textViews
一个
button
。图像取决于
textView
的值。 最好的方法是其他other11ѭ吗?或使用其他东西? 提前致谢。     

解决方法

        您需要扩展
BaseAdapter
并覆盖
getView()
方法。这是一个样本。
    private class CustomAdapter extends BaseAdapter {

        private LayoutInflater inflater;
        private ArrayList<Model> list;

        public CustomAdapter(Context context,ArrayList<Model> list) {
            this.inflater = LayoutInflater.from(context);
                        this.list = list;
        }

        @Override
        public int getCount() {
                    return list.size();
        }

        @Override
        public Object getItem(int position) {
           return list.get(position);
        }

        @Override
        public long getItemId(int position) {
            return position;
        }

        @Override
        public View getView(int position,View view,ViewGroup parent) {

            // If the view is null inflate it from xml
            if (view == null)
                view = inflater.inflate(R.layout.list_row,null);

            // Bind xml to java
           ImageView icon = (ImageView) view
                .findViewById(R.id.image);
           TextView text = (TextView) view.findViewById(R.id.text);
                       text.setText(list.get(position).getText());
                       icon.setImageDrawable(list.get(position).getDrawable());

           return view;
       }

   }