使用自定义的Adapter来设置ListView的内容

本文介绍了一个简单的Android应用程序实例,展示了如何使用ListView组件结合自定义Adapter实现动态加载数据列表的功能。通过对MainActivity和MyAdapter两个核心类的解析,读者可以了解如何初始化ListView、创建Adapter并将其与ListView关联。

这里主要是学习的Adapter的机制

MainActivity.java

 1 package com.kale.listview;
 2 
 3 import android.app.Activity;
 4 import android.os.Bundle;
 5 import android.widget.ListView;
 6 
 7 
 8 public class MainActivity extends Activity {
 9     
10     ListView myLv;
11     
12     @Override
13     protected void onCreate(Bundle savedInstanceState) {
14         super.onCreate(savedInstanceState);
15         setContentView(R.layout.activity_main);
16         
17         MyAdapter adapter = new MyAdapter(this);
18         
19         myLv = (ListView)findViewById(R.id.red_listView_id);
20         myLv.setAdapter(adapter);
21         
22     }
23 }

 

MyAdapter.java

package com.kale.listview;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class MyAdapter extends BaseAdapter{

    Context context;
    
    public MyAdapter(Context context) {
        // TODO 自动生成的构造函数存根
        this.context = context;
    }
    
    //返回Adapter包含多少个item
    @Override
    public int getCount() {
        // TODO 自动生成的方法存根
        //设置总共有多少个元素
        return 10;
    }

    //通过位置来得到对象
    @Override
    public Object getItem(int position) {
        // TODO 自动生成的方法存根
        return null;
    }

    //根据位置来得到相应item的Id
    @Override
    public long getItemId(int position) {
        // 设置返回值为列表项的ID
        return position;
    }
    
    //listView中每个item的view,就是用getView来产生的view。显示一个item,调用一个getView
    @Override
    public View getView(int position, View contertView, ViewGroup parent) {
        
        LinearLayout view = new LinearLayout(context);
        view.setOrientation(0);
        ImageView imageView = new ImageView(context);
        imageView.setImageResource(R.drawable.kale);
        view.addView(imageView);

        return view;
    }

    
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值