Kanzi: kanzi 学习:kanzi触发器参考

1:概念

  • 触发器Triggle 和动作Action 可用于创建基于用户输入的交互。
  • 节点定义大多数消息处理行为,所有Kanzi节点可以发送并接收消息,并且能通过触发器拦截这些消息。特定 节点默认接收特定用户输入事件的消息。例如:按钮Button 节点默认接收点击消息,滚动视图(Scroll View)节点默认接收滚动消息。

 

在kanzi 中,这些概念与定义事件驱动逻辑有关:

 输入和命中测试:节点如果带对已接收输入类型作出反应的操纵器,则能生成消息(例如:点击消息)

输入操纵器:对特定类型的输入手势作出反应的操纵器,如平移,点击或长按。在Kanzi Studio中,您可以使用已包含特定类型操纵器的节点,或者您可以使用Kanzi Engine API添加输入操纵器。例如:滚动视图(Scroll View)节点包含平移操纵器,按钮节点(Button)包含点击操纵器。

消息:节点使用消息信息通信,消息通过通过隧道和冒泡进程在节点之间传递。消息在隧道式传递期间到达其目标节点,在冒泡式传递期间到达祖先节点,直到触发器拦截该消息并将其设置为已处理。这样您就可以在目标节点放入 触发器。

触发器:触发器对消息或事件作出反应,并应用逻辑。Kanzi包括最常用的动作类型,如设置属性(set Property) 或转到状态(Go to state)

动作:动作是触发器的结果。Kanzi包括一般动作,如设置属性(set Property)、写入日志(Write log),激活主题(Active Theme),可用于控制特定类型的动作,如转到状态(Go to state),设置滚动目标(Set Scroll Target)或导航至页面(Navigate to Page)

 

 2:  触发器消息

当触发器拦截根据动作生成的消息时,您可以设置触发器对该消息执行的动作,您可以:

  1. 拦截消息:对其进行操作,并让它继续在工程树中向上或向下传递
  2. 拦截消息:对其进行操作,并处理消息,触发器处理一个消息时,会消耗这个消息,使消息停留在该触发器处,而其他节点不能拦截它。
  • 通过触发器,您可以在消息产生的节点拦截消息,或者在其任何祖先节点或子孙节点的触发器中拦截消息。
  • 您也可以在相同节点拦截许多不同的消息类型,当消息沿工程树向上传递时,消息为冒泡式传递,当消息沿工程树向下传递时,消息为隧道式传递。所以,您可在创建消息的动作中设置消息是否通过冒泡式,隧道式或者两者结合起来。

3:添加触发器案例 

添加触发器最常见的位置是使用触发器的节点,但您可以将触发器添加到任何节点。

3.1:  案例:添加触发器以及给触发器添加动作(Action)

创建一个2D按钮(Button 2D)节点,给节点添加:点击触发器(Button::click) ,附加时(on Attach)触发器,并给触发器添加动作。

3.2 案例:添加触发器以及给触发器添加条件(Condition)

您可以使用触发条件设置触发器必须满足哪些条件才能触发。

例如:您可以定义条件:

  1. 比如用户在导航到特定页面(page)节点时启动触发器。
  2. 仅当该按钮可见时用户才能点击按钮
  3. 或者只有当特定页面 page 节点活动时用户才能滚动视图

 案例:您可以创建一个条件,只有当特定页面 page 节点处于活动状态时间,才允许用户滚动视图(Scroll View)节点。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值