ArrayAdatper构造传值和getView()方法

博客探讨了ArrayAdapter在构造时如何将datalist传值给mObjects,并在getView()方法中使用。虽然不同构造器可能导致mObjects为null,但默认情况下getView()仍然能正常工作。内容还提到了list_item.xml布局文件以及ArrayAdapter与BaseAdapter的关系。
摘要由CSDN通过智能技术生成
利用ListView和Arrayader实现一个带有图片和介绍的列表:
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //use ArrayAdapter
        lv_list = (ListView) findViewById(R.id.lv_list);
        initDataList();

        Log.e(TAG, "will new adapter");
        adapter = new MyAdapter(this, R.layout.list_item, datalist);
        //adapter = new MyAdapter(this, R.layout.list_item, 0);
        Log.e(TAG, "new adapter done");

        lv_list.setAdapter(adapter);
    }
    private void initDataList() {
        datalist = new ArrayList<>();
        for (int i = 1; i < 10; i++){
            Fruit fruit = new Fruit();
            fruit.imgId = R.drawable.adc;
            fruit.name = "lyl" + i;
            datalist.add(fruit);
        }
    }
class MyAdapter extends ArrayAdapter<Fruit>{
        private int resourceId;
        private Context myContext;
        private ViewHolder holder;

//        public MyAdapter(Context context, int resource, int textViewResourceId) {
//            super(context, resource, textViewResourceId);
//            resourceId = resource;
//        }

        public MyAdapter(Context context, int textViewResourceId, List<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值