MAML实现自由拖动的基本逻辑

自由拖动的逻辑在于移动时的实时赋值,手指移动时可以用move动作来实时给变量赋值,于是自由拖动的逻辑变得很简单,复制代码即可看效果!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!-- 自由拖动 -->
<Button x="#dx000" y="#dy000" w="300" h="300">
       <Triggers>
              <Trigger action="down">
                     <VariableCommand name="x000" type="number" expression="#touch_begin_x - #x000"/>
                     <VariableCommand name="y000" type="number" expression="#touch_begin_y - #y000"/>
              </Trigger>
              <Trigger action="move">
                     <VariableCommand name="dx000" type="number" expression="#touch_x - #x000"/>
                     <VariableCommand name="dy000" type="number" expression="#touch_y - #y000"/>
              </Trigger>
              <Trigger action="up,cancel">
                     <VariableCommand name="x000" type="number" expression="#dx000"/>
                     <VariableCommand name="y000" type="number" expression="#dy000"/>
              </Trigger>
       </Triggers>
</Button>
<Rectangle x="#dx000" y="#dy000" w="300" h="300" fillColor="#80ffffff" cornerRadius="20,20"/>

8 条评论

  • 匿名 2017年4月27日 回复

    加上:persist=”true”

  • 匿名 2017年4月27日 回复

    二楼的问题求解决

  • 匿名 2017年4月27日 回复

    一楼的问题求解决

  • 彭祎 2017年4月24日 回复

    自由拖动用于锁屏,每次解锁后控件的位置都会回到初始位置,请教一下可以怎么解决这个问题啊!

    • 匿名 2017年5月3日 回复

      加上:persist=”true”

    • Sunny 2017年5月3日 回复 作者

      加上:persist=”true”

      • 匿名 2017年5月9日 回复

        多谢,已解决

  • 石头键盘 2017年3月31日 回复

    哈,比我自己弄的简单的多,厉害!

发表评论

电子邮件地址不会被公开。

©2015-2016 zhutidasai.com. 版权所有 京ICP备16041368号-3