はじめに
今日はUnityのUIについて勉強していきます。
UIのToggle(チェックボックス)を使っていてToggleのON/OFF状態を変えると変更イベントであるOnValueChangeがもれなく呼ばれてしまいます。
ただそれだと都合が悪いこともあると思います。
今回は切替イベントを発行させずToggleのON/OFFの状態を変える方法を共有したいと思います。
環境
環境
この記事の情報は次のバージョンで動作確認しています。
* MacOS Monterey (12.1)
* Unity (2021.3.2f1)
SetIsOnWithoutNotify を使いましょう
SetIsOnWithoutNotify
を使うとイベント発行されないです。
[SerializeField] private Toggle toggle; public void Test() { // NG) この方法だとイベント発行されます。 //toggle.isOn = true; // OK) イベント発行されずにON/OFF切り替えできます toggle.SetIsOnWithoutNotify(true); }
アプリの仕様に応じてisOn
とうまく使い分けていきましょう。