Unity3d拉伸GUI.Box

Unity3d拉伸GUI.Box,unity3d,Unity3d,我是Unity的新手,我为移动设备编写了一个简单的tic-tac-toe游戏。 我对GUI.Box有问题。我试图使它伸展,但它不工作,文本被剪裁。我的代码: GUIStyle lBoxStyle = new GUIStyle(GUI.skin.box); lBoxStyle.stretchWidth = true; lBoxStyle.stretchHeight = true; lBoxStyle.wordWrap = true; lBoxStyle.fontSize = 48; lBoxSty

我是Unity的新手,我为移动设备编写了一个简单的tic-tac-toe游戏。 我对GUI.Box有问题。我试图使它伸展,但它不工作,文本被剪裁。我的代码:

GUIStyle lBoxStyle = new GUIStyle(GUI.skin.box);
lBoxStyle.stretchWidth = true;
lBoxStyle.stretchHeight = true;
lBoxStyle.wordWrap = true;
lBoxStyle.fontSize = 48;
lBoxStyle.normal.textColor = Color.black;
GUI.Box(new Rect((virtualWidth - mBoxWidth) / 2, (virtualHeight - mBoxHeight) / 2, mBoxWidth, mBoxHeight), mAlert, lBoxStyle);

如何修复它?
如果文本较短,如何减小大小?

首先使用
CalcSize
找出内容的大小。然后使用该尺寸使盒子紧紧地围绕内容

    GUIStyle lBoxStyle = new GUIStyle(GUI.skin.box);
    lBoxStyle.stretchWidth = true;
    lBoxStyle.stretchHeight = true;
    lBoxStyle.wordWrap = true;
    lBoxStyle.fontSize = 48;
    lBoxStyle.normal.textColor = Color.Black;

    // Caculate the size of the content
    Vector2 size = lBoxStyle.CalcSize(new GUIContent(mAlert));

    // Padding if needed
    // size += new Vector2(10, 10)

    // Use the size as the size of the element
    GUI.Box(new Rect((virtualWidth - size.x) / 2, (virtualHeight - size.y) / 2, size.x, size.y), mAlert, lBoxStyle);

我建议您下载Unity 5的最新测试版,他们正在对GUI进行重大更改,默认情况下包括此“拉伸行为”…@Lefty感谢您的建议,但我不能使用Unity 5,因为我的公司规则:-(