今天来说说kanzi中的状态机。
但是如何去创建,如何用其实doc中已经说的很详细了,废话就不说了,今天主要说说平时遇到应该注意的地方。
1.状态机可以满足我们很多的UI需求,现在说一种实现简单的序列帧。比如wifi信号,连接的时候信号闪的情况。
类似这种简单的动画,如果用动画,我们还要在程序中控制动画的开始和结束,但是如果使用状态机实现,那么简单多了,最多设一下属性即可。
首先我们和一般的状态机一样录状态,然后呢,给个变量,记录这些状态后我们就实现这种动画效果。然后将这个属性添加到此节点。
在我们录制状态的那个节点trigger中添加一个动作:onproperty change,意思就是一个东西边而去改变另外的东西。添加完成,ok,该实现这种动画效果了。
下来其实就简单了,点开刚刚添加的动作,按照提示先添加前提,如果某个属性是什么,或者某个message。而在这里比较简单,当我们此节点的状态如果=某个值,那么添加前提条件就玩了,然后,我们再添加一个动作,意思就是此属性变化,那么我们要修改某个属性。我们添加一个setproperty,将下一个状态设置好即可。注意后面有个延迟。为了动画效果,我们设置1000ms即1s一变。如此,将所有的状态按照顺序全部添加后就会形成类似一个循环。比如:信号从0到1,从1到2,从2到3,从3到4,从4再到0.
要是这一步ok,那么这个已经完成了。
我们试着改变此节点添加的那个变量试试。