【问题标题】:how to Change Font Size of UI Text element using UI Slider in unity C#?如何在统一 C# 中使用 UI 滑块更改 UI 文本元素的字体大小?
【发布时间】:2019-04-12 18:45:16
【问题描述】:

使用 UnityEngine; 使用 UnityEngine.UI;

公开课幻灯片:MonoBehaviour {

Text text;
public Slider slider;

void Start(){

    text = GetComponent<Text> ();

}

public void textscale(int value){

    slider.value     = text.fontSize;

}


}

【问题讨论】:

    标签: c# visual-studio user-interface unity3d text


    【解决方案1】:
    1. 将您当前的脚本替换为以下脚本:

      public class slide : MonoBehaviour
      {
          public Text text; // Drag & drop the Text component inside the Inspector
      
          public void ChangeFontSize(float value)
          {    
              ChangeFontSize( Mathf.RoundToInt( value ) ) ;
          }
      
          public void ChangeFontSize(int value)
          {    
              text.fontSize = value;    
          }
      }
      
    2. 单击您的滑块,在 OnValueChanged 事件中添加一个新条目。

    3. 拖放保存脚本的游戏对象,然后选择slide &gt; ChangeFontSize (Dynamic float)

    【讨论】:

      【解决方案2】:
      1. 添加脚本:

        using UnityEngine;
        using UnityEngine.UI;
        
        public class ScalerScript : MonoBehaviour
        {
            public Text text;
        
            public void TextScale(Slider slider)
            {
                text.fontSize = (int)slider.value;
            }
        }
        
      2. 创建空游戏对象。附加ScalerScript 并将您的文本对象拖放到检查器窗口中脚本的文本字段:

      1. 将您的 Text 元素的 Vertical Overflow 设置为 Overflow

      2. 设置滑块。将带有 ScalerScript 的空游戏对象拖放到 OnValueChanged 滑块函数上。将 Slider 元素作为参数拖放到 TextScale 方法。将 Slider 的 MaxValue 设置为 200:

      1. 运行场景。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-14
        • 2012-09-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-01-20
        • 2018-10-23
        相关资源
        最近更新 更多