【Oculus Go】Buttonにイベントをつける
はじめに
Canvasの上にButtonとTextを配置し、ボタンを押下すると、Textの文字を変更するサンプルを作ります。
準備
手順
1. Canvas上にボタンを配置する
1. Canvas上にボタンを配置する
今回は、PosX, PosY, PosZ = (0,20,0)に配置しました。
また、ボタン名は「Push Me!」としました。
2. Canvas上にテキストを配置する
今回は、PosX, PosY, PosZ = (0,-100,0)に配置しました。
3. イベント用のオブジェクトを作成する
Hierarchy上で「Create Empty」し、オブジェクト名を「GameController」とします。
4. GameControllerにイベント用のコンポーネントを追加する
Assets > OVRInputSelection > Scripts > UIInteractionを追加します。
5. Textとソースコードを関連付けする
GameControllerのOut Textに2.で配置したTextを登録します。
ここで、UIInteractionクラスのoutTextとHierarchy上のTextが関連づけられるようです。
using UnityEngine;
using UnityEngine.SceneManagement;
public class UIInteraction : MonoBehaviour {
public UnityEngine.UI.Text outText;
public void OnButtonClicked() {
if (outText != null) {
outText.text = "<b>Last Interaction:</b>\nUI Button clicked";
}
}
public void OnSliderChanged(float value) {
if (outText != null) {
outText.text = "<b>Last Interaction:</b>\nUI Slider value: " + value;
}
}
public void OnToggleChanged(bool value) {
if (outText != null) {
outText.text = "<b>Last Interaction:</b>\nUI toggle value: " + value;
}
}
public void OnClearText() {
if (outText != null) {
outText.text = "";
}
}
public void OnBackToMenu() {
SceneManager.LoadScene("main", LoadSceneMode.Single);
}
}
6. ButtonにOnClickイベントを追加する
項目名 | 値 |
---|---|
Object | GameController |
Function | UIInteraction > OnButtonClicked |
そのままだと味気ないため、テキストを下記のように変更しました。
public void OnButtonClicked() {
if (outText != null) {
outText.text = "ボタンを押しました。";
}
7. 実行
ボタンを押下すると、テキストの文字が変わりました。
参考
Author And Source
この問題について(【Oculus Go】Buttonにイベントをつける), 我々は、より多くの情報をここで見つけました https://qiita.com/eKushida/items/4105c4e82bb61e21095f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .