概要
Toast機能というのはコレです。図1に示すように、Androidでよく見かける画面下方のポップアップのことを指します。
実装
まずプロジェクトを作り、C#スクリプトを作ります。
名前は”ShowToastOnAndroid”とします。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ShowToastOnAndroid : MonoBehaviour
{
private void Start()
{
ShowToast("Hello!");
}
public static void ShowToast(string text)
{
if (Application.platform == RuntimePlatform.Android)
{
AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject activity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
activity.Call("runOnUiThread", new AndroidJavaRunnable(
() =>
{
AndroidJavaClass Toast = new AndroidJavaClass("android.widget.Toast");
AndroidJavaObject javaString = new AndroidJavaObject("java.lang.String", text);
AndroidJavaObject context = activity.Call<AndroidJavaObject>("getApplicationContext");
AndroidJavaObject toast = Toast.CallStatic<AndroidJavaObject>("makeText", context, javaString, Toast.GetStatic<int>("LENGTH_SHORT"));
toast.Call("show");
}
)
);
}
}
}
これを、適当なオブジェクトにアタッチします。
Android端末上で実行すると、図1に示したようにToast表示をすることが出来ます。
※プラットフォームの判別については、この記事が詳しいです。