Composer是Compose框架的核心组件。顾名思义,它是用来执行Compose函数并维护底层数据结构的工具
Compose所使用的数据结构不同于传统View系统使用的树,而是一种基于连续List
的数据结构 - Gap Buffer
Gap Buffer
先来看看Gap Buffer的结构是什么样的,举个例子:
- [ ]
- 这是一种数据结构[ ]
- 这是一种[ ]数据结构
- 这是一种基于列表的[ ]数据结构
- 这是一种基于[ ]列表的数据结构
- 这是一种基于[ ]列表的数据结构
- 这是一种基于连续[ ]列表的数据结构
这就是Gap Buffer的基本操作,这种数据结构被广泛用在文本编辑中。
其中[ ]
代表gap
,具有如下特点: