0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Oculus Go】Buttonにイベントをつける

Posted at

はじめに

Canvasの上にButtonとTextを配置し、ボタンを押下すると、Textの文字を変更するサンプルを作ります。

準備

手順

1. Canvas上にボタンを配置する

今回は、PosX, PosY, PosZ = (0,20,0)に配置しました。
また、ボタン名は「Push Me!」としました。

1.png

2. Canvas上にテキストを配置する

今回は、PosX, PosY, PosZ = (0,-100,0)に配置しました。

2.png

3. イベント用のオブジェクトを作成する

Hierarchy上で「Create Empty」し、オブジェクト名を「GameController」とします。

4. GameControllerにイベント用のコンポーネントを追加する

Assets > OVRInputSelection > Scripts > UIInteractionを追加します。

スクリーンショット 2019-02-09 13.46.04.png

5. Textとソースコードを関連付けする

GameControllerのOut Textに2.で配置したTextを登録します。

3.png

ここで、UIInteractionクラスのoutTextとHierarchy上のTextが関連づけられるようです。

UIInteraction.cs
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

そのままだと味気ないため、テキストを下記のように変更しました。

UIInteraction.cs
	public void OnButtonClicked() {
        if (outText != null) {
            outText.text = "ボタンを押しました。";
        }

7. 実行

5.jpg

ボタンを押下すると、テキストの文字が変わりました。

6.jpg

参考

Oculus_GoのコントローラからレーザーポインタによりUIを操作するまで

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?