为什么我不能使用统一插件调用来更改UI?

时间:2018-12-19 22:17:15

标签: android unity3d

我构建了一个 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);
                }

0 个答案:

没有答案