对象树简介
对象树是 iVX 编辑器中直观呈现案例数据结构、管理对象的可视化体系。它具有非常强大的功能,尤其当案例中添加了数量众多的对象,数据结构繁杂时,借助于对象树可以更好地管理对象。 在iVX中,对象树分为了前台和后台两个部分,前台为我们项目中可视的部分,各种页面的组件和模块都放在前台这个“根”的下方;后台则专门用于存放数据库,已及用于前台后台沟通的服务等,该部分主要是抽象的功能,并不具有可视的实体。下面将主要针对对象树前台根进行几种基本功能的详解:
对象树中的对象之间一般会存在以下两种特殊的关系:
- 层级关系
在相对定位的环境下,层级关系影响到的是两个对象之间的位置关系,层级处于对象树更下方的对象-按照对象所处容器的排列方式排列在更前面(图中在前台下的正常排列从上到下,对象层级在下方的会显示在更上面)。
在绝对定位环境下,组件的位置排列是不会互相挤压的,因而层级关系不会影响到两个组件之间的位置关系,层级体现的影响为对象的z轴相对位置, 即对象发生重叠时,层级高的对象将遮盖层级低的对象,调整层级会影响存在重叠关系的两张图片谁显示在上方。
当作品中添加多个页面,在作品预览时,页面将由下往上加载。
- 父子关系
这种包含、从属关系就成为父子关系,所有对象都可被视为前台组件的子对象,前台组件为其父对象。
父对象的位置、是否可见等属性都将被子对象继承,可用于对一组对象进行统一管理,容纳,避免对象毫无组织的散落在前台中,从而形成逐级嵌套、统一管理的更为规范、合理的数据结构。
并非所有对象都可充当父对象,在 iVX 中,通常只有容器类组件(前台、行、列、容器组…)可充当父对象。 当某对象处于选中状态时,新添加的组件将成为其子对象。
对象树操作
对象树除了可视化呈现案例结构外,还可通过其对对象进行重命名、删除、复制、粘贴等操作。
(1)重命名
添加组件时,系统将自动对对象按照“组件类别 + 添加次序”的方式进行命名,例如图片 1、文本 2 等。 如果想进行重命名,可在对象树中双击其名称,将进入重命名模式,此时可通过键盘键入重新命名。键入完毕后点击任意位置可结束编辑状态:
(2)对象的层级调整
对象树规定越靠下的对象处于较低的层级,因此当我们需要调整对象的层级顺序时,只需长按鼠标左键-然后将其拖动至目标对象的上方,此时系统将出现橙色条提示目标位置,确认无误后释放鼠标左键即可:
(3)对象的归属调整
如果我们想改变对象的归属,将其从 A 父对象下移动到 B 父对象下, 也可以通过将拖拽的方式进行。此时需要按住鼠标左键,拖动至目标父对象位置, 目标父对象将处于橙色高亮选中状态,释放鼠标即可完成拖动:
需要注意的是,使用该方法所选取的对象-一定要是能作为父对象的容器类对象,否则将提示“不可拖入”。
该方法可实现对象移入,也可实现移出。需要注意其与改变层级操作的区别。
(4)对象的管理操作
对象树允许我们对某对象执行复制(剪切)、粘贴(相对位置粘贴)、删除操作。使用时只需选中目标对象(支持多选的操作,长按Ctrl进行点击-选择实现同时选择 多个对象),然后右键单击,选择对应指令即可。
通过该方法,我们同样可以实现对象的归属调整:
如果项目较大,有时候难以立马寻找到我们所要用到的组件,此时则可以使用到对象树的搜索功能,输入对象的名称并选中可以快速定位该名称的对象。
被事件绑定
添加在对象树的组件,如果作为目标对象被事件执行,则会在对象树的右侧出现一个空心圆:
单击每个右侧的空心圆,则会打开事件面板,并显示所有被执行的事件:
引用与被对象引用
在 iVX 中,使用数据绑定是非常高效且常见的开发模式,当一个组件的属性绑定为另一个组件的属性时,在对象树中会以蓝色的箭头作为标识,当点击蓝色的箭头时,还会在对象树中定位到引用的组件:
相互的,当一个组件的属性被另一个组件的属性绑定时,在对象树中会以黄色的箭头作为标识,当点击黄色的箭头时,还会在对象树中定位到被引用的组件:
对象树的夸应用操作
iVX 支持对象(或对象组)的跨案例复制,即将某对象从一个项目中复制到另一个项目中,便利可重复开发。