private class MyListadpater extends BaseAdapter {
@Override
public int getCount() {
return 1000;//返回是几,则屏幕就显示几个item
}
@Override
public Object getItem(int i) {//万物皆对象
return null;//"i"返回指定position位置对应的对象
}
@Override
public long getItemId(int i) {//返回position位置对应id
return 0;
}
/*
* 获取一个view 用来显示ListView的数据,会作为ListView的一个条目*/
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
/*{1}System.out.println("getView----"+i);
//out of memory on a 108-byte allocation内存溢出
TextView tv;
if(view ==null){
//创建新的view 对象
tv=new TextView(MainActivity.this);
System.out.println("创建新的View对象"+i);
}else{
tv= (TextView) view;
System.out.println("复用历史缓存对象"+i);
}
tv.setText("哈哈哈哈"+i);//在以前版本中i是用position位置表示的,这样会打印出i条
return tv;*/
View view2;
if (view==null){
//创建新的view 对象,可以通过打气筒把一个布局资源转换成一个view 对象
//获取打气筒服务
//[1]view2=View.inflate(getApplicationContext(),R.layout.item,null);
//[2]view2= LayoutInflater.from(getApplicationContext()).inflate(R.layout.item,null);
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
view2=inflater.inflate(R.layout.item,null);//google工程师的源代码
}else{
//复用历史缓存对象
view2=view;
}
return view2;
}
}
09-19
418
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
09-05