Unity 基礎 之 代碼動態監聽UI交互組件(一)

這是我參與8月更文挑戰的第7天,活動詳情查看:8月更文挑戰markdown

一,Button組件

按鈕組件:可響應用戶的點擊並用於啓動或確認操做。ide

1.1 組件介紹

屬性:函數

  • Interactible:此屬性肯定該組件是否接受輸入。此屬性設置爲 false 時,交互被禁用,過渡狀態也將設置爲禁用狀態。
  • Transition:在可選組件中,有幾個過渡選項,具體取決於可選組件的當前狀態。不一樣的狀態包括:正常、突出顯示、按下和禁用。
  • Navigation:還有許多導航選項可用於控制如何實現控件的鍵盤導航。

過分模式:(顏色爲例其餘同理)post

  • Target Graphic:用於交互組件的圖形。
  • Normal Color:控件的正常顏色
  • Highlighted Color:控件突出顯示時的顏色
  • Pressed Color:控件按下時的顏色
  • Disabled Color:控件禁用時的顏色
  • Color Multiplier:這會將每一個過渡的着色顏色乘以其值。由此能夠建立大於 1 的顏色,從而使基色小於白色(或小於完整 Alpha)的圖形元素上的顏色(或 Alpha 通道)變亮。
  • Fade Duration:從一個狀態淡入淡出到另外一個狀態所需的時間(以秒爲單位)

1.2 代碼監聽

  • 監聽無參數形式
public Button m_Btn;
void Start()
{
	  //監聽無參數函數
    m_Btn.onClick.AddListener(OnClickBtn);
}

public void OnClickBtn(int i)
{
    Debug.Log("帶參函數響應,參數是:" + i);
}
複製代碼
  • 委託形式監聽
public Button m_Btn;
void Start()
{
	  //委託監聽
    m_Btn.onClick.AddListener(delegate () {
            OnClickBtn(111);
        });
}

public void OnClickBtn(int index)
{
    Debug.Log("委託監聽, 參數是:" + index);
}
複製代碼
  • Lambda形式簡化
public Button m_Btn;
void Start()
{
	  //Lambda監聽
    m_Btn.onClick.AddListener(() => {
            OnClickBtn(111);
        });
}

public void OnClickBtn(int index)
{
    Debug.Log("委託監聽, 參數是:" + index);
}
複製代碼

二,Toggle組件

開關組件:是讓用戶打開或關閉某個選項的複選框。ui

2.1 組件介紹

屬性spa

  • Interactable:是否接收點擊
  • Transition:肯定控件以何種方式對用戶操做進行可視化響應的屬性。1
  • Navigation:肯定控件順序的屬性。1
  • Is On:開關在開始時是否爲打開狀態
  • Toggle Transition:開關在其值發生變化時以圖形方式做出的反應。提供的選項爲 None_(即複選標記直接出現或消失)和 Fade_(即複選標記淡入或淡出)。
  • Graphic:用於複選標記的圖像(那個對號√)。
  • Group:此開關所屬的開關組。

2.2 代碼監聽

Toggle 的監聽是默認傳遞當前是否勾選的bool值,這樣能夠方便用戶直接使用。若須要加其餘的參數也能夠仿照1例中Button的委託或者Lambda形式去寫就能夠了。code

public Toggle m_Toggle;

void Start()
{
    m_Toggle.onValueChanged.AddListener(OnClickToggle);
}

void OnClickToggle(bool isOn)
{
    if (m_Toggle.isOn)
    {
        Debug.Log("此Toggle已勾選");
    }
    else
    {
        Debug.Log("此Toggle已取消勾選");
    }
}
複製代碼

三,Slider組件

滑動條組件:容許用戶經過拖動鼠標從預約範圍中選擇數值。orm

3.1 組件介紹

屬性ip

  • Interactable:此組件是否接受輸入。
  • Transition:肯定控件以何種方式對用戶操做進行可視化響應的屬性。1
  • Navigation:肯定控件順序的屬性。1
  • Fill Rec:用於控件填充區域的圖形。
  • Handle Rect:用於控件滑動「控制柄」部分的圖形
  • Direction:拖動控制柄時滑動條值增長的方向。選項包括 Left To Right、Right To Left、Bottom To Top 和 Top To Bottom。
  • Min Value:控制柄處於極下端(由 Direction 屬性肯定)時的滑動條值。
  • Max Value:控制柄處於極上端(由 Direction 屬性肯定)時的滑動條值。
  • Whole Numbers:是否應該將滑動條約束爲整數值?
  • Value:滑動條的當前數值。若是在 Inspector 中設置了該值,則該值將用做初始值,可是當值變化時,運行時的值也將變化。

3.2 代碼監聽

public Slider m_Slider;

void Start()
{
    // 監聽 --> 會自動將value做爲參數傳遞
    m_Slider.onValueChanged.AddListener(OnValueChanged_Slider);
}

void OnValueChanged_Slider(float value)
{
    Debug.Log("滑動條值改變響應方法, 當前Slider的值:" + value);
}
複製代碼

好了今天就學到這裏吧,UI交互組件動態監聽已經學了三個了,還有三個咱們下篇見吧~ 代碼動態監聽UI交互組件(二)get

相關文章
相關標籤/搜索