Unity用Slider实现滑动确认/解锁

项目中有个需求,是需要玩家滑动解锁,增加二次确认难度防止玩家误操作的一个功能,就如同iphone滑动解锁一样

滑动解锁

我的做法 是直接采用Unity自带的Slider来实现,大概原理就是滑动handle到slider的maxvalue.然后做一些列操作


初始状态


确认状态

但是策划不想要这么生硬的拉扯,想做个松开按钮,如果滑动条值没有满自动缩回去的一个动画效果,和iphone一样

由于自带的slider 没有提供松开鼠标的一些事件用来监听,但是F12进入可以看到

OnPointerDown是个override鼠标按下事件

既然有down 肯定有up,再f12父类

OnPointerUp,virtual方法就是鼠标抬起

所以 自己扩展一个uislider组件,继承Slider


自己扩展继承 Slider

其中m_Value,看源码可知道 就是我们slider的value

value

扩展一个onvaluechangeend事件,去实现他即可

松开时value小于1,就自动把value缩小至0,其中用了dotween动画



扩展下,策划虽然没有说给文字说什么动态效果,但是自己根据iphone的解锁,做了个类似呼吸灯的效果,原理也很简单,使用dotween ,对canvasgroup的扩展,动态改变alpha就行,或者改变文本颜色的透明通道也行

浅色


深色
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图...
    万忍阅读 5,400评论 0 6
  • 系统基础库Category/Util 一套Category类型的库,附带很多自定义控件sstoolkit将Bloc...
    DDY阅读 3,931评论 0 0
  • 一共研究了两个问题: 如何确定滑动精度 如:一个单位100的增量 OC并没有提供相应的API UISlider的高...
    Unity与iOS的灵魂小白阅读 14,076评论 1 6
  • 问题:问我是不是可以回原来的部门。背景是:我被原来部门的大老板整,原因是她希望我帮她一起整走我老板,但是我选择了帮...
    正在学习随顺的宝宝阅读 2,405评论 0 0
  • js出现的位置 1.行间 直接写在标签当中2.内嵌 写在html页面中3.外链 通过script标签引入 获...
    Metallic阅读 1,333评论 0 0

友情链接更多精彩内容