在ScrollView下有中层次是scorllview->viewport->content scorllView对象下的ScrollRect组件是关键 ,scorllRect中指定其对象下的viewport以及content 在scrollrect下有个拖动的模式是elastic。开启这个模式就能上下啦。要实现下拉/上啦刷新就得计算出一个固定的值,而这个固定的值让我想了好久,有必要写一篇文章来记录一面忘记。
这个方法是在脚本中通过获取scrollRect组件,然后为对象添加监听事件 scrollRect.OnValueChange.AddListener(ScrollEvent);
ScorlEvent是事件的方法,参数是二维向量(vector2 pos) pos.y小于等于0的时候就是垂直方向的最下面(可以不要ScrollBarUI)
1 float originHeight= scrollRect.GetComponent<RectTransform>().sizeDelta.y; //scrollRect的高度 2 float hight = scrollRect.content.sizeDelta.yscrollRect.content.localPosition.y; //scrollRect.content.localPosition.y 为随着内容增加而增加的长度 3 float offhight = originHeight - hight; //固定的偏移量的大小 4 float present = offhight/originHeight; //随scrollRect的高度而变化的 比例