![](/img/trans.png)
[英]How can I change a GUILayout.Button in editor script text and color and back?
[英]How can I change guilayout.label font size?
private void OnGUI()
{
GUIStyle myStyle = new GUIStyle();
myStyle.fontSize = 20;
GUILayout.BeginVertical(GUI.skin.box);
GUILayout.Label("Replacing");
GUI.Label(new Rect(650, 650, 300, 50), "HELLO WORLD", myStyle);
}
我看到了 Replacing 标签,但它的字体非常小。 所以我想测试使用 new Rect 更改大小,但我在任何地方都看不到 HELLO WORLD。
我正在使用两个选项:这个
GUIStyle headStyle = new GUIStyle();
headStyle.fontSize = 30;
GUI.Label(new Rect(Screen.width / 3, Screen.height / 2, 300, 50), "HELLO WORLD", headStyle);
或这个
GUI.skin.label.fontSize = 30;
GUILayout.Label("HELLO WORLD", GUILayout.Width(300), GUILayout.Height(50)))
由于您传递给Rect
结构的值, Text
显示但对您不可见。 在x
和y
参数中传递给Rect
结构的 650 和 650 的值似乎比实际屏幕尺寸大。 将其减少到大约 100,您应该能够看到Text
:
GUI.Label(new Rect(100, 100, 300, 20), "Hello World!", myStyle);
如果您希望您的 UI 显示是动态的,我建议您使用Screen.height
和Screen.height
来确定放置 GUI 元素的位置,并确保无论屏幕大小如何,它都能正常工作。
例如:
GUI.Label(new Rect(Screen.height / 2, Screen.height / 2, 300, 20), "Hello World!", myStyle);
最后,我假设这是基于您的其他问题的编辑器代码。 如果不是,那么您应该使用带有Text
组件的新 UI 系统。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.