Unity 横向滚动ScrollView
用AnimationCurve做省事很多(/.\)
先上效果图
插件设置
左右都为pingpang
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using DG.Tweening;
using System;
public class MyScrollViewTest : MonoBehaviour {
[HideInInspector]
public List<Sprite> SpList;
public int MiddleIndex;//显示在中间的序号
public float PosX;//间距
public int visualItems= 5;//可视Items
public GameObject item;
List<GameObject> list; // 排序list
//深度,距离,大小Curve
public AnimationCurve depthAC;
public AnimationCurve disAC;
public AnimationCurve scaleAC;
int startIndex;
bool isMoving = false;
// Use this for initialization
void Start () {
fideOther();
}
// Update is called once per frame
void Update () {
}
//初始化
public void test() {
setStartIndex();
list = new List<GameObject>();
int num = (visualItems - 1) / 2;
for (int i = 0; i < visualItems; i++) {
GameObject go = Instantiate(item);
go.transform.SetParent(transform.Find("View"));
go.transform.localPosition = new Vector3(0f, 0f, 0f);
go.GetComponent<Image>().sprite = SpList[startIndex];
startIndex++;
if (startIndex > SpList.Count - 1) {
startIndex =