美文网首页
ListView的认识

ListView的认识

作者: dev晴天 | 来源:发表于2018-08-11 18:31 被阅读0次
1 安卓中一切控件一切皆View

java中任何对象皆是object对象

ListView 含有滑动条属性

内存溢出 : 当多个对象快速创建很多时 来不及回收导致内存溢出 会崩掉

 2 初步优化:convertView 对象的复用

解析 手机屏幕上可见的条目都为listview的对象 当你下滑的时候从上面消失的Item就会存储在convertView 对象中  后面都是复用前面的对象 最初屏幕显示的对象

为空创建对象 不为null就复用对象

  if (convertView==null){
   // 判断是否为空为空创建对象 不为空复用历史缓存对象
                textView = new TextView(MainActivity.this);
            }else{
                textView= (TextView) convertView;
            }
            textView.setText("ListView"+position);
            return textView;

  3   listView显示数据原理

mvc原理

mode   数据
v      View视图    jsp(javaweb中)
c     controller   severlet(负责吧数据展示在jsp中)

安卓中 
mode 数据
v     View视图

c  adapter


4 listView 中的奇怪现象:
 例如当你要显示6个条目在adapter的getView()方法中打印测试。  把listView的高调为match_parent的时候你打印出六条语句  而你把高调为wrap_content的时候大约打印20条语句。

解释: 当你使用match_parent的时候编译器知道总高度 知道每个listview的高度 可以计算出条目数,当你写成包裹内容 总高度编译器不知道 进行多次校验知道完全显示到屏幕铺满屏幕 显示还是6 但是打印将近20。

优化点:尽量使用match_parent


相关文章

网友评论

      本文标题:ListView的认识

      本文链接:https://www.haomeiwen.com/subject/yfndbftx.html