大四实习准备1_java构造器_android ListView
2015-04-23 16:50
489 查看
2015-4-23
Java构造器
与类名同名;无返回值(void也不行);被不同的修饰符修饰是有区别的;当构造函数被private修饰时,只有本类可访问。其他类可以通过该类的get函数得到对象。如单子模式;子类的构造函数默认调用super(),即父类的构造函数,然后再回到子类自己的构造函数。子类的构造函数中写了super()效果也一样,相当于没写(只能写在第一句,否则出错);构造函数可以重载(当父类有多个构造函数时,可以用super(xxx)来指定调用父类的哪个构造函数);当自定义了构造函数后,系统就不自动生成构造函数了。所以最好为每个类写无参构造函数,以免出错;运行过程:有继承关系时,1>初始化父类的静态块和静态成员变量 2>初始化子类的静态块和静态成员变量 3>执行父类的构造函数 4>执行子类的构造函数;
单子模式,是指一段时间内该类的对象只存在一份。
如
getView()
4.添加点击事件
Java构造器
与类名同名;无返回值(void也不行);被不同的修饰符修饰是有区别的;当构造函数被private修饰时,只有本类可访问。其他类可以通过该类的get函数得到对象。如单子模式;子类的构造函数默认调用super(),即父类的构造函数,然后再回到子类自己的构造函数。子类的构造函数中写了super()效果也一样,相当于没写(只能写在第一句,否则出错);构造函数可以重载(当父类有多个构造函数时,可以用super(xxx)来指定调用父类的哪个构造函数);当自定义了构造函数后,系统就不自动生成构造函数了。所以最好为每个类写无参构造函数,以免出错;运行过程:有继承关系时,1>初始化父类的静态块和静态成员变量 2>初始化子类的静态块和静态成员变量 3>执行父类的构造函数 4>执行子类的构造函数;
单子模式,是指一段时间内该类的对象只存在一份。
如
public View getView(int position, View convertView/*用于将之前加载好的布局进行缓存,以便重用*/, ViewGroup parent) { // TODO Auto-generated method stub fruit f = getItem(position);//该position对应的fruit对象 View v ;//理解是diy_list_item这个布局,布局也是一种view ViewHolder vHolder = null;//用于缓存fruitImage和fruitName,避免每次都findViewById() if( null == convertView ){ v = LayoutInflater.from(getContext()).inflate(resourceId, null); vHolder = new ViewHolder(); vHolder.fruitImage = (ImageView)v.findViewById(R.id.imageView); vHolder.fruitName = (TextView)v.findViewById(R.id.textView); v.setTag(vHolder); } else{ v = convertView; vHolder = (ViewHolder) v.getTag(); } vHolder.fruitImage.setImageResource(f.getImageId()); vHolder.fruitName.setText(f.getName()); return v; } //内部类ViewHolder class ViewHolder{ ImageView fruitImage; TextView fruitName; }
getView()
4.添加点击事件
lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position,long id) { // TODO Auto-generated method stub fruit f = fruitList.get(position); Toast.makeText(MainActivity.this, f.getName(), Toast.LENGTH_SHORT).show(); } });
相关文章推荐
- 大四实习准备2_java异常处理_android控件练习
- 大四实习准备3_java多线程
- 准备去实习了,java后端开发和android都学过,去实习面试java后端还是android的好
- abinbinyang---t android.widget.AbsListView.obtainView(AbsListView.java:2040)
- 最常用的Java设计之一 观察者模式 在android中的实例 ListView Adapter机制
- java.lang.illegalargumentexception view android.widget.listview is not a sliding drawer
- 【Java/Android性能优 7】Android公共库——图片缓存 网络缓存 下拉及底部更多ListView 公共类
- android ListView下拉刷新(代码是别人的,但是本人写了很多注释,并准备好好分析下原因)
- 大四实习准备4_java内部类
- 大四实习准备5_android广播机制
- 大四实习准备6_android服务
- at android.widget.AbsListView.obtainView(AbsListView.java:2040)
- 开发日记(4):android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:4090)数组越界异常
- at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:)
- 实习前的准备工作:Android开发环境的搭建
- java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
- at android.widget.AbsListView.obtainView(AbsListView.java:2427)错误
- at android.widget.AbsListView.obtainView(AbsListView.java:2163)
- 【Java/Android性能优 7】Android公共库——图片缓存 网络缓存 下拉及底部更多ListView 公共类
- at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:8262)