我构建了一个 unity插件,以将unity项目与我的android项目集成,并且在成功集成之后,我尝试从 Android 项目中调用unity方法,一切看起来都很好,我的问题显示出当用户完全来自 unity场景,并且我在 android studio 中调用方法时,该方法被调用,但是当我尝试更改 Textview 的文本时>或更改按钮的颜色,则没有任何反应。 我注意到活动打开之前gitting调用方法,请您帮忙。
C#代码:
private void OnBackClick()
{
Debug.Log("OnClickBack is Clicked ");
if (Application.platform == RuntimePlatform.Android)
{
using (AndroidJavaClass MyClass = new AndroidJavaClass("projectPath.ClassName"))
{
AndroidJavaClass playerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject obj_Activity = playerClass.GetStatic<AndroidJavaObject>("currentActivity");
MyClass.CallStatic("setStringFromUnity", "Here is a string for you Android");
}
Application.Quit();
}
}
Java代码:
static TextView myAwesomeTextView;
static Button button;
public static void setStringFromUnity (String input){
//getting a call but Textview not change.
myAwesomeTextView.setText(input);
//Button not change.
button.setBackgroundColor(Color.BLACK);
}