当前位置: 首页 > article >正文

Android——convertView

convertView

试想一下,我们要实现一个列表,但是数据量很大。你可能会想到懒加载这个优化点,但是如果每次加载一个item都去创建一个对象的话,多少有点浪费性能了。所以在Android中,我们在 BaseAdaptergetView 方法中,可以使用convertView进行优化。


    @Override
    public View getView(int i, View convertView, ViewGroup viewGroup) {
        ViewHolder holder;
        if (convertView == null) {
            convertView = LayoutInflater.from(mContext).inflate(R.layout.item_list, null);

            holder = new ViewHolder();

            holder.iv_icon = convertView.findViewById(R.id.iv_icon);
            holder.tv_name = convertView.findViewById(R.id.tv_name);
            holder.tv_desc = convertView.findViewById(R.id.tv_desc);

            // 将视图持有者保存到转换视图当中
            convertView.setTag(holder);
        } else {
            holder=(ViewHolder) convertView.getTag();
        }


        Planet planet = mPlaneList.get(i);
        holder.iv_icon.setImageResource(planet.image);
        holder.tv_name.setText(planet.name);
        holder.tv_desc.setText(planet.desc);

        return convertView;
    }

    public final class ViewHolder {
        public ImageView iv_icon;
        public TextView tv_name;
        public TextView tv_desc;
    }

案例代码


http://www.kler.cn/a/369262.html

相关文章:

  • uniapp+uniCloud前端独立开发全栈项目Vue3版本学习路线,轻松开发H5、微信小程序、APP
  • 【网络面试篇】三次握⼿、四次挥手综述
  • 图文详解ChatGPT-o1完成论文写作的全流程
  • android 文字绘制
  • python如何基于numpy pandas完成复杂的数据分析操作?
  • 我准备写一份Stable Diffusion入门指南-part1
  • Thinkphp-Laravel大学生心理健康管理系统的设计与实现zw779
  • vscode 插件推荐安装
  • 科技狂潮下的新蓝海:元宇宙将如何重塑我们的世界?
  • 【机器学习基础】激活函数
  • 项目简介——基于GD32+FreeRTOS+LVGL的智能通用控制Demo
  • 【知识科普】今天聊聊前端打包工具webpack
  • 如何应对PDF无法转换成其他格式?常见原因与解决方法解析
  • 029.爬虫专用浏览器-抓取跨域#document下的内容
  • ReactOS系统中平衡二叉树按从左到右的顺序找到下一个结点
  • 股指期货连续合约是什么意思?可以交易吗?
  • Ovis: 多模态大语言模型的结构化嵌入对齐
  • appium+mumu模拟器 嚼碎菜鸟教程
  • 酷睿 Ultra 200S核显相当于GTX 1050Ti?4核心表现出人意料
  • 一文理解平流层温度变化规律
  • Java毕业设计 基于SSM jsp餐厅卫生安全系统
  • Java中线程安全问题解决方案
  • 【软件设计】常用设计模式--代理模式
  • Leetcode 二叉树的右视图
  • cargo编译时Rust时如何自定义输出目录
  • 今年2024的1024文章