_ShowAndroidToastMessage() 在 ARCore 中的功能是什么?
What is function of _ShowAndroidToastMessage() in ARCore?
我在看HelloAR中HelloARController的脚本时发现了这个方法,但是我看不懂这个函数:private void _ShowAndroidToastMessage(string message))
.
有人可以为我解释一下这个功能吗?
/// <summary>
/// Show an Android toast message.
/// </summary>
/// <param name="message">Message string to show in the toast.</param>
private void _ShowAndroidToastMessage(string message)
{
AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject unityActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
if (unityActivity != null)
{
AndroidJavaClass toastClass = new AndroidJavaClass("android.widget.Toast");
unityActivity.Call("runOnUiThread", new AndroidJavaRunnable(() =>
{
AndroidJavaObject toastObject = toastClass.CallStatic<AndroidJavaObject>("makeText", unityActivity,
message, 0);
toastObject.Call("show");
}));
}
}
它只显示 Android 支持的祝酒消息。
参考https://developer.android.com/guide/topics/ui/notifiers/toasts.
Android中的Toasts
用于在Activity
中显示Notification
。您可能知道 HTML 中有哪些警报消息。使用 javaScript alert()
函数,我们可以 Alert
用户使用弹出消息了解某事,用户看到该消息并单击 OK
按钮关闭对话框。
Toast
Android 编程中的消息类似,但它们本身是 terminated
/dismissed
(我们没有任何按钮)。我们需要设置一个消息必须显示的时间段,当到达时间消息逐渐消失,它通常显示在 Activity
页面的底部。
_ShowAndroidToastMessage()
method is one of the varieties for Toast messaging.
这是 Toast 的另一个简单示例:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View toastView = toast.getView();
Toast toast = Toast.makeText(this,
"This is a Toast message!",
Toast.LENGTH_LONG);
toast.setTextColor(Color.WHITE);
toast.setGravity(Gravity.BOTTOM, 0, 0);
toastView.setBackgroundColor(Color.RED);
toast.show();
}
}
希望这对您有所帮助。
我在看HelloAR中HelloARController的脚本时发现了这个方法,但是我看不懂这个函数:private void _ShowAndroidToastMessage(string message))
.
有人可以为我解释一下这个功能吗?
/// <summary>
/// Show an Android toast message.
/// </summary>
/// <param name="message">Message string to show in the toast.</param>
private void _ShowAndroidToastMessage(string message)
{
AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject unityActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
if (unityActivity != null)
{
AndroidJavaClass toastClass = new AndroidJavaClass("android.widget.Toast");
unityActivity.Call("runOnUiThread", new AndroidJavaRunnable(() =>
{
AndroidJavaObject toastObject = toastClass.CallStatic<AndroidJavaObject>("makeText", unityActivity,
message, 0);
toastObject.Call("show");
}));
}
}
它只显示 Android 支持的祝酒消息。 参考https://developer.android.com/guide/topics/ui/notifiers/toasts.
Toasts
用于在Activity
中显示Notification
。您可能知道 HTML 中有哪些警报消息。使用 javaScript alert()
函数,我们可以 Alert
用户使用弹出消息了解某事,用户看到该消息并单击 OK
按钮关闭对话框。
Toast
Android 编程中的消息类似,但它们本身是 terminated
/dismissed
(我们没有任何按钮)。我们需要设置一个消息必须显示的时间段,当到达时间消息逐渐消失,它通常显示在 Activity
页面的底部。
_ShowAndroidToastMessage()
method is one of the varieties for Toast messaging.
这是 Toast 的另一个简单示例:
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
View toastView = toast.getView();
Toast toast = Toast.makeText(this,
"This is a Toast message!",
Toast.LENGTH_LONG);
toast.setTextColor(Color.WHITE);
toast.setGravity(Gravity.BOTTOM, 0, 0);
toastView.setBackgroundColor(Color.RED);
toast.show();
}
}
希望这对您有所帮助。