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);
}
我看到了更换标签,但是它的字体很小。因此,我想使用新的Rect来测试更改大小,但是我看不到HELLO WORLD。
答案 0 :(得分:1)
由于您传递给Rect
结构的值,Rect
正在显示但对您不可见。在x
,y
参数中传递到Text
结构的650和650值似乎大于实际的屏幕尺寸。将其减少到大约100,您应该可以看到GUI.Label(new Rect(100, 100, 300, 20), "Hello World!", myStyle);
:
Screen.height
如果您希望UI显示是动态的,建议您使用Screen.height
和GUI.Label(new Rect(Screen.height / 2, Screen.height / 2, 300, 20), "Hello World!", myStyle);
来确定GUI元素的放置位置,并确保不管屏幕大小如何,该元素都可以工作。 / p>
例如:
element.innerText
最后,我认为这是基于您其他问题的编辑器代码。如果不是,那么您应该将新的UI系统与Text
组件一起使用。
答案 1 :(得分:0)
我正在使用两个选项: 这个
<!-- Dynamic height from flex-1 -->
<div class="flex-1 relative">
<!-- SVG height not fitting to flexible item height -->
<svg viewBox="0 0 100 100" class="max-h-full absolute inset-0" >
<circle cx="50" cy="50" r="45" fill="transparent" stroke-width="5"
class="stroke-current text-blue-500" />
</svg>
或这个
GUIStyle headStyle = new GUIStyle();
headStyle.fontSize = 30;
GUI.Label(new Rect(Screen.width / 3, Screen.height / 2, 300, 50), "HELLO WORLD", headStyle);