-
猴子青睐的逗比式查看全部
-
BaseAdapter查看全部
-
convertView.getTag()将该convertView对应的viewHolder取出来查看全部
-
利用构造方法初始化变量查看全部
-
通过构造方法来访问对象的属性? “构造方法的初衷是完成初始化动作”查看全部
-
为什么当声明mInflater时,要在MyAdapter()方法中加上Context参数查看全部
-
普通式查看全部
-
数据适配器——BaseAdapter——ViewHolder优化BaseAdapter思路 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
小技巧:对于一些细微的程序比较效率用获取系统纳秒时间方法 关键代码: long start =System.nanoTime(); ... long end =System.nanoTime(); long dValue=end-start; 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
BaseAdapter的三样式 IV //文艺式:不仅利用了ListView的缓存,更通过ViewHolder类来实现显示数据的视图的缓存,避免多次通过findViewById寻找控件。 ViewHolder viewHolder; if(convertView==null){ viewHolder=new ViewHolder(); convertView=mInflater.inflate(R.layout.item, null); viewHolder.iv=(ImageView) convertView.findViewById(R.id.iv_image); viewHolder.title=(TextView) convertView.findViewById(R.id.tv_title); viewHolder.content=(TextView) convertView.findViewById(R.id.tv_content); convertView.setTag(viewHolder);//通过setTag将ViewHolder与convertView绑定 }else{ viewHolder=(ViewHolder) convertView.getTag();//getTag()取出关联的ViewHolder } //通过ViewHolder对象找到对应控件 ItemBean bean=list.get(position); viewHolder.iv.setImageResource(bean.ImageRes); viewHolder.title.setText(bean.title); viewHolder.content.setText(bean.content); return convertView; } class ViewHolder{//避免重复的findViewById public ImageView iv; public TextView title; public TextView content; } } 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
BaseAdapter的三样式 III //普通式:利用了ListView的缓存特性,如果没有缓存才创建新的View,算入门,但是findViewById依然会浪费大量时间。 /*if(convertView==null){//为空:View未被实例化,缓存池中无缓存 convertView=mInflater.inflate(R.layout.item, null);//此操作也是非常耗时,避免重复创建大量的convertView } ImageView iv=(ImageView) convertView.findViewById(R.id.iv_image); TextView title=(TextView) convertView.findViewById(R.id.tv_title); TextView content=(TextView) convertView.findViewById(R.id.tv_content); ItemBean bean=list.get(position); iv.setImageResource(bean.ImageRes); title.setText(bean.title); content.setText(bean.content); return convertView;*/ ... 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
BaseAdapter的三样式 II @Override public int getCount() { // TODO 自动生成的方法存根 return list.size(); } @Override public Object getItem(int position) { // TODO 自动生成的方法存根 return list.get(position); } @Override public long getItemId(int position) { // TODO 自动生成的方法存根 return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { /** * 返回每一项显示的内容 */ //逗比式:没有利用到ListView的缓存机制,没有任何优化处理,每次都创建新的View,设置控件,效率极其低下。 /*View view=mInflater.inflate(R.layout.item, null);//第一参数:需要装载到item中的布局文件;第二参数:通常为null。 ImageView iv=(ImageView) view.findViewById(R.id.iv_image); TextView title=(TextView) view.findViewById(R.id.tv_title); TextView content=(TextView) view.findViewById(R.id.tv_content); ItemBean bean=list.get(position); iv.setImageResource(bean.ImageRes); title.setText(bean.title); content.setText(bean.content); return view;*/ ... 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
BaseAdapter的三样式 I public class ItemBean { public int ImageRes; public String title; public String content; public ItemBean(int imageRes, String title, String content) { super(); ImageRes = imageRes; this.title = title; this.content = content; } } //另类 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { ... List<ItemBean> itemBeanList = new ArrayList<ItemBean>(); for (int i = 0; i < 20; i++) { itemBeanList.add(new ItemBean(R.drawable.ic_launcher, "我是标题" + i, "我是内容" + i)); } ListView listView=(ListView) findViewById(R.id.listView1); listView.setAdapter(new MyAdapter(this, itemBeanList)); } } //另类 public class MyAdapter extends BaseAdapter { private List<ItemBean> list; private LayoutInflater mInflater; public MyAdapter(Context context,List<ItemBean> list) {//数据源和适配器进行关联 this.list = list; //context:要使用当前的Adapter的界面对象 //mInflater:布局装载器对象 mInflater=LayoutInflater.from(context); } ...查看全部
-
数据适配器——BaseAdapter——BaseAdapter基本结构 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
-
数据适配器——BaseAdapter——ListView的显示与缓存机制 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】查看全部
举报
0/150
提交
取消