MixedRealityToolKit(以下MRTK)にはExamplesというデモサンプル集が含まれています。
Examplesを理解すればMRTKの機能の使い方を学習することやノンコーディングでのアプリ開発が可能になります。
前回からUX/Interactables/InteractablesExamplesを見ています。
前回はTraditional Styleを見ていました。
今回はSceneDescriptionPanelのCheckBoxを見ていきます。

SceneDescriptionPanelにはチェックボックスやラジオボタンのUIサンプルがあります。
〇CheckboxCollection

チェックボックスのサンプルです。
3種類のボックスが用意されており、すべてに[Interactable.cs]がアタッチされています。
[Profile]の[Target]で[Background][Button][Label][CheckBoxCheck]が設定されています。

これによって選択された状態と非選択の状態で見た目を変化させているようです。


[CheckBox]はプレファブとして用意されいます。

[CheckBox]には[Touch Handler.cs]がアタッチされており、[OnTouchStarted]として[Interactable.SetInputDown]が指定されています。

[OnTouchConpleted]として[Interactable.SetInputUp]が指定されています。
これがチェックボックスの状態の変化を担っています。
〇Interactable.cs
public void SetInputDown()
{
if (!CanInteract())
{
return;
}
dragStartPosition = null;
HasPress = true;
StartClickTimer(true);
}
public void SetInputUp()
{
if (!CanInteract())
{
return;
}
HasPress = false;
HasGesture = false;
if (CanFireClick())
{
StopClickTimer();
TriggerOnClick();
IsVisited = true;
}
}
[CheckBox]を実際にアプリ内で使用する際は[Interactable.cs]のEventの[OnClick()]にイベントを指定します。

次回は[ToggleCollection]を見ていきます。