在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的高度而变化的   比例