W_WuHuVR/WuHu_touming/Assets/Scr/SlidingMenu/CarouselItem.cs

51 lines
1.5 KiB
C#

using UnityEngine;
using UnityEngine.UI;
namespace Toolset.UI
{
/// <summary>
/// 轮播图子元素
/// </summary>
public class CarouselItem : MonoBehaviour
{
private CarouselMenu parent;
private RectTransform rect;
private Image img;
private Color clr;
private CanvasGroup canvasGroup;
//[HideInInspector]
public float v = 0;
/// <summary>
/// 初始化
/// </summary>
/// <param name="_parent"></param>
public void Init(CarouselMenu _parent)
{
rect = GetComponent<RectTransform>();
canvasGroup = GetComponent<CanvasGroup>();
//img = GetComponent<Image>();
parent = _parent;
//clr = img.color;
}
/// <summary>
/// 计算transform
/// </summary>
/// <param name="value"></param>
public void CalculateTrans(float value)
{
v += value;
//rect.localPosition = new Vector3(parent.GetPosition(v), rect.localPosition.y, rect.localPosition.z);
rect.localPosition = new Vector3(rect.localPosition.x, parent.GetPosition(v), rect.localPosition.z);
canvasGroup.alpha = parent.GetAlpha(v)+1f;
//img.color = clr;
rect.localScale = new Vector3(parent.GetScale(v), parent.GetScale(v), 1);
if (rect.localScale.x>=1)
{
rect.localScale = Vector3.one;
}
}
}
}