ProtoPie进阶教程:列表滑动的操作判断

访客3年前黑客文章417

本案例会用列表滑动操作的速度判断为例,教会你在Protopie中进行操作判断的主要思路和多种实现方式。

ProtoPie进阶教程:列表滑动的操作判断

具体运用场景

对于长列表来说,我们一般会增加一个回到顶部的按钮,使用户点击后能够直接回到首屏。一般情况下,回到顶部按钮是常驻的,在超出一屏时,按钮出现,用户需要时候,点击即可返回顶部。

如果说我们想要让设计比用户想得更早,就可以在列表界面在浏览超过一屏后,用户进行快速上滑时,做出预判用户有快速回到顶部的需求,这时界面才会出现回到顶部的图标按钮,点击后可以直接回到顶部。这样回到顶部按钮既不会遮挡界面显示,也可以在用户最需要的时候出现。

需要实现的效果

用户做上滑操作时,当速度满足一定条件时,页面的反馈与正常上滑的操作有所区分。本案例实现动态效果:

Protopie教程2-列表滑动的操作判断

案例源文件下载&预览:

https://cloud.protopie.io/p/14e927bfe8(需要下载源文件,源文件中有四个不同场景,对应“快掷”、“速度判断”*2、“次数判断”)

本案例中长列表当滑动超过一屏后,快速向上滑动则出现回到顶部的图标,点击回到顶部。

此方案需要满足的两个判定条件:

滑动距离超过一屏;

滑动速度超过X。

使用Protopie的触发 之一种实现 ***

最简单的 *** 是使用“快掷”的触发(手指快速滑动图层,达到一定速度可以出发相应动作),但是“快掷”能改变的只有滑动方向,对于具体的速度无法自定义设置。

Protopie教程2-列表滑动的操作判断

Protopie教程2-列表滑动的操作判断

使用快掷触发的界面设置

利用Protopie预定义变量 第二种实现 ***

Protopie中有预定义获取点击后手指在屏幕上滑动的速度:

Protopie教程2-列表滑动的操作判断

具体实现,在抬起时获取用户滑动速度(其中速度正负值表方向),并赋值给变量speed,监听speed的值,当满足speed>1500且滚页超过一屏(滚页>603)则回到顶部图标出现。这样具体有效速度的范围便是可以调整的。

Protopie教程2-列表滑动的操作判断

使用预定义变量实现的界面设置

自定义参数计算 第三种实现方案(小爷自己算速度)

具体实现步骤:

Step1:设置6个变量,分别为time(计时器);t1t2(对应下击时时间及抬起时时间);y1y2(对应下击时及抬起时鼠标或手指的在Y轴上的位置);speed对应用户的操作速度。

Step2:变量time为数字变量,添加自动加载触发后赋值time,使用循环表达式time+0.1,即使用0.1秒为最小单位(可以自己设定)进行计时。

Protopie教程2-列表滑动的操作判断

Step3:t1t2,分别添加在下击和抬起操作下,使其等于timeStep4:y1y2,分别添加在下击和抬起操作下,用户操作位置的y,使用表达式$mouseY

Step5:在抬起操作下进行speed计算:speed=(y2-y1)/(t2-t1)

(速度的正负值表示其在y轴上的方向)

PS. 若方向不做考虑可以使用abs函数,abs是取绝对值的函数去除移动方向的限制。

Step6:最后添加监听,监听speed参数,使用条件当满足speed>1500且滚页超过一屏(滚页>603)则使得回到顶部图标出现。(这样就不嫌事多的完成自己的计算)

相关文章

详解 UML 用例图画法 用例说明方式

详解 UML 用例图画法 用例说明方式

一、概述 用例图是编写需求说明时经常用到的需求表达方式,用于向开发、测试同事说明需求中用户与系统功能单元之间的关系。但是很多刚接触用例的新人,在准备用例说明时并不清楚参与者与用例之间应该如何表达,网...

如何破解互联网大佬同款的“产品决策”错误?

如何破解互联网大佬同款的“产品决策”错误?

“物有本末,事有终始,知所先后,则近道矣” 也许是因为曾经从事过售前咨询的原因,自己一直特别喜欢总结方法论的东西,做售前咨询的时候折腾方法论是因为要把简单的事情复杂化,体现我们的理解深度和专业性,做...

“特殊”的产业互联网,“特殊”的发展之道

“特殊”的产业互联网,“特殊”的发展之道

直面产业互联网在目标对象、互联网角色、商业模式等方面的特殊性,从特殊性着手,我们才能找到产业互联网时代的正确发展之路。 相对于用新的方式和方法继续挖掘C端用户本身的消费潜能,以B端用户为对象的发展方...

万字干货 | 初级产品经理工作技巧指南

万字干货 | 初级产品经理工作技巧指南

本文的主要内容是初级产品经理工作过程中各环节的技巧总结,我写的时候尽量是从现有工作内容中抽离,没有涉及到我的具体业务,因此不同细分领域的产品经理都可以通用。 刚入门不久的产品经理容易有这样一个现象:...

如何让产品赢在起跑线?

如何让产品赢在起跑线?

产品要想取得成功并占领用户心智,除开创始团队、资源等因素之外,其中必然还有一条,就是:赢在了产品定位。 那么多做资讯的,头条起来了,那么多做电商的,拼多多起来了,他们的产品为啥赢了呢? 在编辑推荐的...

新浪微博上线「微博小店」,能否实现电商突围?

新浪微博上线「微博小店」,能否实现电商突围?

三月份的时候,新浪微博上线了「微博小店」,并因为较高的抽佣比例导致质疑声颇多,那么微博小店的返佣规定到底意味着什么,它真的如网传般不堪还是网友言过其实呢? 3月26日,微博上线微博小店;4月20日开...