我正在使用Unity开发跨平台应用程序。
我正在使用以下C#代码在屏幕上放置一个按钮:
void onGUI()
{
float texWidth = m_buttonPano.normal.background.width;
float texHeight = m_buttonPano.normal.background.height;
float width = texWidth * Screen.width / 1920;
float height = (width / texWidth) * texHeight;
float y = Screen.height - height;
float x = Screen.width - width;
if (GUI.Button (new Rect (x, y, width, height), "", m_buttonPano)) {
if (this.TappedOnPanoButton != null) {
this.TappedOnPanoButton ();
}
m_guiInput = true;
}
}
另请注意,我通过创建一个空的GameObject并将脚本附加到我的场景中将此脚本添加到我的场景中。
它在PC上运行良好,但在Android上按钮不会显示。有趣的是,如果我点击它的位置(右下角),功能将被保留,因此它只是我放在它上面的自定义背景纹理没有显示..
此外,这是背景纹理附件的代码:
m_buttonPano = new GUIStyle();
m_buttonPano.normal.background = Resources.Load("GUI/buttonPano") as Texture2D;
m_buttonPano.active.background = Resources.Load("GUI/buttonPano") as Texture2D;
m_buttonPano.onActive.background = Resources.Load("GUI/buttonPano") as Texture2D;
答案 0 :(得分:0)
问题实际上是一个Unity错误。下载f4补丁后,一切正常。