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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity用Slider实现滑动确认/解锁相关的知识,希望对你有一定的参考价值。

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

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

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

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

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

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

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

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

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

Unity3D 之UGUI 滑动条(Slider)

这里来讲解下UGUI 滑动条(Slider)的用法

控件下面有三个游戏对象

Background -->背景

Fill Area --> 前景区域

Handle Slide Area --> 滑动条

Slider的属性

其他几个设置和其他控件都差不多,这里来讲解几个特有的属性。

Direction -->方向

Whole Numbers -->控制整数输入

然后来看下脚本控制。这里的方法调用和其他的不用,方法里面有浮点参数

using UnityEngine;
using System.Collections;

public class SilderTest : MonoBehaviour {

    // Use this for initialization
    void Start () {
    
    }
    
    // Update is called once per frame
    void Update () {
    
    }
    public void SliderTest(float even) {
        Debug.LogError("您的血量=" +even );
    }
}

然后通过绑定脚本,能够在改变滑动条的值的时候,调用方法。

以上是关于Unity用Slider实现滑动确认/解锁的主要内容,如果未能解决你的问题,请参考以下文章

Unity3D 之UGUI 滑动条(Slider)

Unity3D-UGUI系列Slider 滑动条组件详解

UnityVR中 如何实现VR模式下滑动Slider让Cube变色。 如何滑动Slider

讲解怎么在Unity的Inspector面板中用滑动条来控制变量的大小

Unity UI Slider 更改 UI 文本

用airtest做滑动解锁怎么搞?其实很简单!