本文实例为大家分享了Unity实现颜色渐变滑动条的具体代码,供大家参考,具体内容如下
效果展示

代码
直接挂在UGUI Slider上即可
using UnityEngine;
using UnityEngine.UI;
public class ColorFade : MonoBehaviour
{
Color[] colors = new Color[]{
new Color(1, 0, 0),
new Color(1, 1, 0),
new Color(0, 1, 0),
new Color(0, 1, 1),
new Color(0, 0, 1),
new Color(1, 0, 1),
new Color(1, 0, 0)};
private Slider slider_color;
private Image img_handle;
private void Awake()
{
slider_color = transform.GetComponent<Slider>();
slider_color.onValueChanged.AddListener(OnColorSliderValueChanged);
// handle
img_handle = slider_color.handleRect.GetComponent<Image>();
img_handle.color = Color.red;
// bg
var hueTex = new Texture2D(colors.Length, 1);
hueTex.SetPixels(colors);
hueTex.Apply();
slider_color.transform.Find("Background").GetComponent<Image>().sprite =
Sprite.Create(hueTex, new Rect(Vector2.zero, new Vector2(colors.Length, 1)), Vector2.one * 0.5f);
// fill
slider_color.fillRect.GetComponent<Image>().enabled = false;
}
private void OnColorSliderValueChanged(float _value)
{
img_handle.color = Color.HSVToRGB(_value, 1, 1);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持靠谱客。
最后
以上就是糊涂茉莉最近收集整理的关于Unity实现颜色渐变滑动条的全部内容,更多相关Unity实现颜色渐变滑动条内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复