欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Unity技術(shù)手冊之Slider滑動器使用實例詳解

 更新時間:2022年11月08日 08:36:13   作者:芝麻粒兒  
這篇文章主要為大家介紹了Unity技術(shù)手冊之Slider滑動器使用實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

??實踐過程

為了方便更多的人(新手)看明白,使用的漢字,真實項目盡量使用英文規(guī)則昂。

該控件通常可以用于技能冷卻或者人物血條或者游戲里面設(shè)置功能的各種滑動條。

我們在Hierarchy窗口中右鍵(UI-Slider)創(chuàng)建一個滑動條(如下圖)。會發(fā)現(xiàn)有五個子物體,其實主要的是Background和Fill以及Handle,另外兩個帶Area的是為了做寬高適配,一直填充滿父物體Slider。

Background便是默認(rèn)的滑動條底圖或底色。Fill是滑動進(jìn)度的填充效果,Handle是滑動塊。Slider物體有個Slider組件,除了默認(rèn)的Transition(和Button中的一樣)還有Fill Rect和Handler Rect。Fill Rect用來指定滑動后的填充,也就是Fill物體,Handler Rect是用來設(shè)置滑動塊的。

特別聲明:Background、Fill、Handle其實都是Image組件,帶有Image的所有屬性及特點,加上里面的Image Type,可以充分利用起來玩出花樣。

Slider其他參數(shù)

Direction(方向):可以修改滑動方向,默認(rèn)是從左到右,還有右到左,上到下,下到上??聪路紾if。

Min Value & Max Value:最小值和最大值。最小值最大值有助于數(shù)字化滑動的效果,比如血條的實現(xiàn),就可以設(shè)置為最小值0,最大值100。

Whole Numbers:表示滑動過程為整數(shù)(默認(rèn)不勾選,滑動進(jìn)度帶有小數(shù)),如果設(shè)置大小分為是0-1則不會有緩緩填充進(jìn)度效果。當(dāng)設(shè)置的大小范圍最大值大于1的時候,滑動不會出現(xiàn)小數(shù)值。

Value:當(dāng)前所處進(jìn)度,范圍在Min Value和Max Value之間。

設(shè)置監(jiān)聽事件有兩種:

public class TestSlider : MonoBehaviour
{
    private void Start()
    {
        //代碼形式添加
        gameObject.GetComponent<Slider>().onValueChanged.AddListener(SliderChange);
    }
    //外面Unity編輯器中選擇指定
    public void SliderChange(float value)
    {
        Debug.Log("注意一定要選擇Dynamic float下的方法名,滑動的進(jìn)度" + value);
    }
}

如果你想添加進(jìn)度條開始拖動的瞬間。以及結(jié)束拖動的瞬間  可以自定義一個Slider。

也可以直接繼承IBeginDragHandler,IEndDragHandler,兩種方法。 方法一

public class TestSlider : MonoBehaviour,IBeginDragHandler,IEndDragHandler
{
    private void Start()
    {
        //代碼形式添加
        gameObject.GetComponent<Slider>().onValueChanged.AddListener(SliderChange);
    }
    //外面Unity編輯器中選擇指定
    public void SliderChange(float value)
    {
        Debug.Log("注意一定要選擇Dynamic float下的方法名,滑動的進(jìn)度" + value);
    }
    public void OnBeginDrag(PointerEventData eventData)
    {
        Debug.Log("開始拖動" + eventData.button);
    }
    public void OnEndDrag(PointerEventData eventData)
    {
        Debug.Log("結(jié)束拖動" + eventData.position);
    }
}

方法二 自定義Slider就需要Unity編輯器中的物體掛載你自定義的腳本了。

public class TestSlider : MonoBehaviour
{
    private void Start()
    {
        //代碼形式添加
        gameObject.GetComponent<CustomSlider>().onValueChanged.AddListener(SliderChange);
        gameObject.GetComponent<CustomSlider>().beiginDrag = OnSliderDragBegin;
        gameObject.GetComponent<CustomSlider>().endDrag = OnSliderDragEnd;
    }
    private void OnSliderDragBegin()
    {
        Debug.Log("開始拖動");
    }
    private void OnSliderDragEnd()
    {
        Debug.Log("結(jié)束拖動");
    }
    //外面Unity編輯器中選擇指定
    public void SliderChange(float value)
    {
        Debug.Log("滑動的進(jìn)度" + value);
    }
}

以上就是Unity技術(shù)手冊之Slider滑動器使用實例詳解的詳細(xì)內(nèi)容,更多關(guān)于Unity技術(shù)Slider滑動器的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論