目录
一、内容控件
1、Image
- 2D节点使用Material添加效果需要用Brush的Foreground Brush - Material Brush。
- Render Transformation Origin:设置旋转中心。
2、Text Block 2D
Text Block 2D 显示 2d 文字 ,主要的属性有 :
- Text 文本内容 ,会根据内容是否有换行 符自动,或者在输入内容的 时候按住键盘上shift+enter可以换行
- Font 文本的字体 ,显示中文要导入并选择字体
- Font Size Size 字体大小
- Foreground Brush 设置字体的颜色
- Overflow 字体超过范围显示的符
- Text horizontal alignment /textvertical vertical alignment 设置文本内容相对文本长度范围内的对齐方式
- Constrain Content Height 限制宽高后有,没写完字体有省略号效果
3、Text Block 3D
Text Block 3D 跟2d 类似,区别如下
• 设置颜色使用 font color属性
• 对字体的大小设置一方面可以通过 font size ,但是 font size 建议不要超过 60 m,太大的话容易导致字体 cache 满了影响性能下降,对于 3d 的text 也可以通 过2d to 3d projection scale来调整 text 大小
• 可以设置 3d text 的font material 来制作更多的字体效果
二、模型控件Mesh
1、进度条通过编写shader实现
2、Mesh包括sphere,box 等
三、交互控件
1、交互控件原理
Triggers
- 事件触发器,可以用来对交互控设置交互响应
- 不同的 控件具有消息,也就是trigger
- On attached trigger 是所有的节点都具的,表示这个节点被被实例化加入场景树没渲染出来之前,可以用做初始化的事情
- On property change 所有节点具,表示某一个属性值变化了触发的
- On timer 所有节点具,定时器
- Trigger settings 下可以设置 condition
2、常用交互
Action 表示动作,可以操作改变场景中的状态,节点属性,等动作,可以用来与场景进行交互 .
1.最常见的actions
Set property 修改一个节点的属性值
• Target item 表示哪个节点,可以直接把拽到 relative 上
• 还可以设置相对路径及 alias
• Target property 表示哪个属性
• Target property attribute表示是否设置子属性
• Value from表示设置的值是固定,还来自另一个
• 节点的属性值还是来自消息带参数
• Value 根据 value from 的不同选择值
• Advanced 下可以设置 action delay表示延时
2.Play animation播放动画
3.Write Log打印log进行调试
3、消息路由Message
优先响应 kanzi studio 中对此节点上添加的消息处理,处理完后在 trigger settings 里默认是把消息标记成已处理 。
4、Button
- 按钮,有单击双长事件
- 默认是单击, trigger主要有 button down 按下, button click 点击抬起的时候触发
- 还有 button enter, button leave,button cancel 事件
- 添加 enable double click , 添加 double click trigger双击
- 添加 hold interval 设置长按时间,添加 button long press trigger处理长按,和双击需要重启 preview
- 按钮的 hit testable 属性控制按钮是否有效
- Hit testable container属性选中表示 button 的拾取采用 layout width/height/depth
让普通节点变成按钮
- 在kanzi中可以给任何一个节点,比如 textblock,image,empty node,mesh node等等添加 hit testable以及 click enabled 属性,就可以在 trigger 中添加 general:click , click begin,click leave,事件让一个普通的节点变成按钮,尤其是导入 3d模型的 mesh后
5、TOGGLE BUTTON
- 双向开关,有 toggle on , toggle off trigger 用来做开和关的事件 ,就跟 checkbox 一样
- Toggle state trigger 表示状态切换的时候触发
- 属性 toggle state 可以设置当前是开还关
6、TOGGLE BUTTON GROUP
- 双向开关,有 toggle on ,toggle off trigger 用来做开和关的事件 ,就跟 checkbox 一样
- Toggle state trigger 表示状态切换的时候触发
- 属性 toggle state 可以设置当前是开还关
- Toggle state count 设置可以三个状态或者更多
- Index In Group toggle button 在group里的位置,在group中的组只能有一个为选中状态
7、SCROLL VIEW
Scrollview主要可以用来制作模拟区域内连续滑动,去移动,旋转,缩放物体
设置一块滑动区域,手指在此范围内会触发 scrolled 消息
主要属性有如下
- Scroll sensitivity设置滑动的敏感度,值越大,滑的越快
- Scroll bounds minimum 滑动范围的最小值
- Scroll bounds maximum 滑动范围的最大值
主要有如下的 trigger
- User scroll started,scroll started开始滑动
- Scrolled 滑动的连续消息,消息中有 scroll position vec2 参数
- User scroll ended ,scroll ended 滑动停止的消息
- Scroll snap request 滑动过程中手指抬起的一刹那出发的,之后会继续滑动到结束
8、SLIDER
Slider 有如下常用属性
- Maximum value slider滑到尾的最大值
- Minimum value 滑到起始的最小值
- Value 表示当前 slider 的值,介于最大值和最小值之间的
- Normalized value 始终是 0 到1 范围,代表当前单位化的值
- 创建Slider需要为其创建一个Resource Dictionary
主要有以下的 trigger
- Range concept : value changed , value started,value finished
- 表示华东的过程中触发的滑动开始,连续触发的滑动值改变,滑动结束事件