コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】uGUI でトグルを操作するコードを綺麗に記述できる「CompositeToggle」紹介

はじめに

「CompositeToggle」を Unity プロジェクトに導入することで
uGUI でトグルを操作するコードを綺麗に記述できるようになります

概要

[SerializeField] Sprite sptireOn;
[SerializeField] Sprite sptireOff;
[SerializeField] Color colorOn;
[SerializeField] Color colorOff;
[SerializeField] int fontSizeOn;
[SerializeField] int fontSizeOff;

private void SwitchOn()
{
    GetComponent<Image>().sprite = sptireOn;
    GetComponent<Image>().color = colorOn;
    GetComponent<Text>().fontSize = fontSizeOn;
}

private void SwitchOff()
{
    GetComponent<Image>().sprite = sptireOff;
    GetComponent<Image>().color = colorOff;
    GetComponent<Text>().fontSize = fontSizeOff;
}

このようにトグルを操作する処理を実装している場合、

[SerializeField] CompositeToggle toggle;

private void SetToggleValue( bool isOn )
{
    toggle.booleanValue = isOn;
}

このようなコードに置き換えることができます

f:id:baba_s:20180104162757p:plain

コンポーネントは「CompositeToggle」を使用します

関連記事