等比缩放




using UnityEngine;
using UnityEngine.UI;

public class NewBehaviourScript1 : MonoBehaviour 
{
    public Toggle scaleControl;
    public Slider widthSlider;
    public Slider longSlider;
    public InputField widthInput;
    public InputField longInput;

    private void Awake()
	{
        float scale=0;

        scaleControl.onValueChanged.AddListener(value => {
            if (value)
            {
                scale = widthSlider.value / longSlider.value;
            }
        });

        widthSlider.onValueChanged.AddListener(value=> {
            if (scaleControl.isOn)
            {
                longSlider.value = value / scale;
            }
            widthInput.text = value.ToString();
        });

        longSlider.onValueChanged.AddListener(value =>
        {
            if (scaleControl.isOn)
            {
                widthSlider.value = scale * value;
            }
            longInput.text = value.ToString();
        });

        widthInput.onEndEdit.AddListener(value=> {
            widthSlider.value = int.Parse(value);
        });

        longInput.onEndEdit.AddListener(value => {
            longSlider.value = int.Parse(value);
        });
    }
    
}

猜你喜欢

转载自blog.csdn.net/qq_17813937/article/details/79982890