航洋学校

详细内容

手机垂直划屏效果从零学起(一)

  ■ 静态元素结构

1.png

  将需要制作划屏的文章内容转化为动态面板。

  再将文章内容再转化为动态面板,并将该面板调整为显示范围(手机屏幕大小)的尺寸。

  将调整好的动态面板放到手机屏幕区域内

  ■ 交互分析

  我们期望的效果是:

  1、可以垂直拖动文章内容。

  2、拖动最多可超出上下边界半屏,但会自动回弹到上下边界。

  ■ 垂直拖动&拖动限制

  拖动显示范围面板时,使文章内容被拖动。

  所以选中『显示范围』面板,选择『拖动时』事件,选择『移动』,移动的元件是文章内容。

  移动中要选择『垂直拖动』,因为外面只希望文章内容垂直拖动,不希望左右也一起被拖动。

  我们希望可以上下各可以最多拖出去半屏,所以需要增加边界限制。Axure8版本中可以直接设置边界,Axure7需要用条件来限制。

  Axure8的方法

  顶部<=[[This.height/2]]、底部>[[This.height/2]]。Axure7的方法

  增加条件,符合条件的时候才可以拖动:

  【注释】NeiRong=文章内容动态面板,This是当前元件。

  在做的时候,不要忘记点击旁边的fx按钮,增加局部变量。这样变量才可以生效的哦。

  [[NeiRong.y]]<=[[This.Height/2]] //向下拖动达到半屏时,内容的Y坐标。

  [[NeiRong.y]]>=[[This.height/2-NeiRong.height]] //向上拖动达到半屏时,内容Y的坐标。

  这样划屏就做好了,并且上下都可以额外拖出去半个屏幕,允许拖出去的额外半屏是为了回弹准备的。

  ■ 回弹

  回弹是根据文章内容的拖动结束时的Y坐标来判断是否超过了文章的最上面或最下面的边界。

  如果文章内容的Y>0,就将文章内容移回0,0点。要选择动画才会有弹回去的过程哦,我比较喜欢缓慢退出这个动画。

  如果文章内容的Y坐标<显示范围的高度-内容的高度,那么就将文章内容的Y坐标设置为显示范围的高度-内容的高度。

  我觉得大家的疑点应该在于『显示范围的高度-内容的高度』这个东西,不知道为什么要这样写。

  其实这是一个数学题……

  『显示范围-内容高度』得到的是还需要移动多少像素才可以让剩下的*一屏(1屏高度=显示范围的高度)内容正好放在显示范围中。

  由于Axure的左上为0,0点,所以面板向上移动的时候,Y坐标(Y坐标是以元件左上点为准的)会变成负数。所以我们需要用『显示范围-内容高度』,而不是『内容高度-显示范围』。

  贵阳航洋动漫职业学校是贵阳市教育局批准(贵阳市教[2010]15号)设立的跨专业(包含计算机平面设计、动漫与游戏制作、影像与影视技术、绘画等专业)、多门类、全日制中等专业职业学校,同时也是一所实行准军事化管理的学校。


关注公众号

关注微头条

学校位于贵阳市白云区数字内容产业园内,占地面积60多亩,篮球场、室内运动场、游泳池、食堂、超市等俱全,环境优雅。

电话直呼
在线客服
发送邮件
企业位置
联系我们:
13618598927
校长办公室
点击这里给我发消息
还可输入字符250(限制字符250)
seo seo