UIScrollView恢复到滑动前的起始的状态
void Awake () {
    originPos = scroll.transform.position;
}

scroll.transform.position = originPos;
scroll.GetComponent<UIPanel>().clipOffset = Vector2.zero;
SpringPanel spring = Panels[i].GetComponent<SpringPanel>();
if (spring != null) {
    spring.enabled = false;
}


scroll就是UIScrollView所在的物体,我发现NGUI的滑动,改变的是scroll的位置position和UIPanel的clipOffset属性,所以理论上将他们恢复到原来的位置,那么就是恢复到滑动前的状态了。

位置是恢复了,但是有时候切换的时候它还在乱自己移动,后来发现是NGUI新加的SpringPanel,这个脚本大概就是设置一个目标点然后溜达过去,把它设置成不可用就行了,注意其实没有滑动过时,这个脚本是没有添加上的。


首页 我的博客
粤ICP备17103704号