Android Virtualview:淘宝、天猫 又一个动态化、高性能的UI框架力作

本文详细介绍了阿里团队发布的Tangram2.0版本中的VirtualView,重点讨论了其在解决UI组件动态更新和加载性能问题上的创新,包括虚拟化开发原理、工作流程和使用教程,以及如何通过XML模板和二进制编译实现组件的动态性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 在同年的12月,阿里团队对此作了重大更新:发布了Tangram2.0版本,主要是补充了AndroidVirtualView,也广泛应用于淘宝、天猫客户端

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 今天,我将带大家全面了解Tangram 2.0版本的新成员:Virtualview

Virtualview的Github地址


目录

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


1. 为什么要向 Tangram模型 加入 VirtualView

即 为什么要更新 Tangram2.0版本

  • 结论
  1. 提升组件动态性,实现动态更新
  2. 提升了组件的渲染性能
  • 具体描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

而上述解决方案的承载方案,则是 VirtualView

VirtualView的Github地址


2. VirtualView介绍

  • 简介

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 特点

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


3. 实现原理

3.1 核心思路

根据Tangram v1.0中 出现的问题:UI组件无法动态更新 & 加载性能低,VirtualView的具体解决方案如下

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.2 实现方案

  • 根据其原理,VirtualView的实现方案是:虚拟化开发
  • 虚拟化开发的本质:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

之所以称为虚拟化,是因为Canvas绘制的视图不存在一一对应的实体View

3.3 总结

从上可知,VirtualView的创新在于:

  1. 通过 XML 模板实现组件的动态性
  2. 通过 虚拟化技术(本质 = Canvas)开发组件,提升了组件的渲染性能

4. 工作流程

  • 在了解了VirtualView的本质原理 & 整体架构后
  • 下面,我将开始讲解VirtualView的工作流程

4.1 流程概述

  • 根据上述方案,VirtualView的工作流程分为3大部分:创建UI组件、创建界面模板 & 客户端加载界面
  • 具体如下

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

4.2 流程详细分析

下面我将对每个流程的原理 & 过程详细分析

流程1:创建UI组件

  • 具体描述 根据业务需求,创建所需要的UI组件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

有2种创建方式:使用框架内置(封装好)的UI组件 / 自定义

1.1 使用框架内置(封装好)的UI组件

  • 即 可直接使用封装好的UI组件而不需自身创建
  • 具体如下(含组件基础属性)

注: a. 自定义组件应继承基础组件 b. 系统封装UI组件的原理 同 “自定义UI组件,下面将具体讲解

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

###1.2 自定义UI组件 若框架内置的U

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值