Adapter的使用步骤和baseAdapter的使用以及inflater的一些运用

Adapter的使用步骤:

1.建立数据源

2.建立adapter

3.建立adapter-source连接

4.绑定adapter到界面组件


baseAdapter的使用:

	
	//baseAdapter基础适配器
	//baseAdapter是google的工程师给LIstAdapeter的默认实现
	public class MyAdatper extends BaseAdapter{

		//返回当前LIstview有多少个条目
		public int getCount() {
			return persons.size();
		}

		
		//返回当前position位置对应的条目的object对象
		public Object getItem(int position) {
			return persons.get(position);
		}

		//返回当前position位置某个条目的id
		public long getItemId(int position) {
			return position;
		}

		/**返回每一个条目显示的具体内容
		 * 计算当前界面会有多少个条目出现
		 * 1.得到每一个textview的高度
		 * 2.得到listview的高度
		 * 3.listview高度/textview的高度=得到了一个屏幕显示的textview的个数
		 * listview的每一个条目的显示都需要调用一次getview的方法
		 */
		public View getView(int position, View convertView, ViewGroup parent) {
//			TextView tv = new TextView(MainActivity.this);
//			//tv.setText("我是第"+position+"个文本");
//			Person person = persons.get(position);
//			tv.setText(person.getName()+" "+person.getNumber());
//			return tv;
			View  view = inflater.inflate(R.layout.item, null);
			Person person = persons.get(position);
 			TextView tv_name = (TextView)view.findViewById(R.id.tv_name);
			TextView tv_number =(TextView) view.findViewById(R.id.tv_number);
			tv_name.setText("名字为: "+person.getName());
			tv_number.setText("年龄为:  "+person.getNumber());
			return view;
		}
		
		
		
		
		
	}
步骤的实现:
		setContentView(R.layout.activity_main);
		MyDbOpenHelper helper = new MyDbOpenHelper(this);
		helper.getReadableDatabase();
		//第一步得到组件的id的引用
		mListView = (ListView) this.findViewById(R.id.lv_all_person);
		
		 
		
		PersonDao dao = new PersonDao(this);
		persons =dao.getAllPersons();
		
		
		//第二步设置组件要显示的内容
		//ListView显示的东西比较复杂,需要数据的适配器
		//mListView.setAdapter(new MyAdatper());
在这里最后就绑定了adapter到界面组件中(findViewById(R.id.lv_all_person)其实就是组件)


inflater的一些运用:


	//把一个布局文件转化成view 对象
	private LayoutInflater inflater;//打气筒,充气泵
	//inflater 是系统的一个服务 初始化服务 , 可以使用该服务的工具实现转化功能
	inflater = (LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
	//实现把一个布局文件转化成view 对象
	View  view = inflater.inflate(R.layout.item, null);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值