在ScrollView下有中层次是scorllview->viewport->content  scorllView对象下的ScrollRect组件是关键 ,scorllRect中指定其对象下的viewport以及content 在scrollrect下有个拖动的模式是elastic。开启这个模式就能上下啦。要实现下拉/上啦刷新就得计算出一个固定的值,而这个固定的值让我想了好久,有必要写一篇文章来记录一面忘记。

这个方法是在脚本中通过获取scrollRect组件,然后为对象添加监听事件 scrollRect.OnValueChange.AddListener(ScrollEvent);

ScorlEvent是事件的方法,参数是二维向量(vector2 pos) pos.y小于等于0的时候就是垂直方向的最下面(可以不要ScrollBarUI)

 float originHeight= scrollRect.GetComponent<RectTransform>().sizeDelta.y;  //scrollRect的高度
float hight = scrollRect.content.sizeDelta.yscrollRect.content.localPosition.y; //scrollRect.content.localPosition.y 为随着内容增加而增加的长度
float offhight = originHeight - hight; //固定的偏移量的大小
float present = offhight/originHeight; //随scrollRect的高度而变化的 比例

UGUI之用ScrollRect做下拉刷新的更多相关文章

  1. 使用jquery结合ajax做下拉刷新页面,上拉加载页面,俗称分页

    jquery结合iscroll.js做下拉刷新页面,上拉加载页面 先上代码,里面都有注释这就不一一说明了 <!DOCTYPE html> <html lang="en&qu ...

  2. listview下拉刷新和上拉加载更多的多种实现方案

    listview经常结合下来刷新和上拉加载更多使用,本文总结了三种常用到的方案分别作出说明. 方案一:添加头布局和脚布局        android系统为listview提供了addfootview ...

  3. Android开发学习之路-下拉刷新以及GridView的使用

    GridView是类似于ListView的控件,只是GridView可以使用多个列来呈现内容,而ListView是以行为单位,所以用法上是差不多的. 主布局文件,因为要做下拉刷新,所以加了一个Prog ...

  4. XListView下拉刷新和上拉加载更多详解

    转载本专栏每一篇博客请注明转载出处地址,尊重原创.博客链接地址:小杨的博客 http://blog.csdn.net/qq_32059827/article/details/53167655 市面上有 ...

  5. 【微信小程序】下拉刷新真机测试无效

    根据文档的描述,做上拉加载时直接实现页面的onReachBottom()函数即可.但是要做下拉刷新时,除了实现onPullDownRefresh()函数外,还必须要在app.json中配置开启enab ...

  6. vue+better-scroll 下拉刷新,上拉加载更多

    better-scroll 来做下拉刷新和 上拉加载 特别方便.  安装好vue脚手架和better-scroll 之后 直接复制粘贴就可以看到效果了 <template> <div ...

  7. 小程序组件-swipe多页切换,并支持下拉刷新,上拉加载,menu动态联动切换

    前言 最近一个小程序项目中遇到一个需求,就是实现类似资讯类app的多页面切换的那种效果, 如下图: 最终效果: 1.功能分析 首先实现这个功能分为三步: 实现顶部menu菜单 实现多页面滑动切换 支持 ...

  8. vue工程 使用滚动组件 vue2-better-scroll 实现上拉加载 下拉刷新

    vue2-better-scroll 关于具体安装&使用过程 请移步api文档 已经很详细了 而且超清晰明了. https://cnpmjs.org/package/vue2-better-s ...

  9. 使用ReTrofit做缓存(结合上拉加载和下拉刷新)

    1. noCache 不使用缓存,全部走网络 2. noStore 不使用缓存,也不存储缓存 3. onlyIfCached 只使用缓存 4. maxAge 设置最大失效时间,失效则不使用 需要服务器 ...

随机推荐

  1. Ubuntu16.04下安装sublime text3

    通过ppa安装,打开终端,输入以下命令: sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo ...

  2. unity 中让Text的文字动态刷新形式

    第一种刷新文字形式 using UnityEngine; using System.Collections; using UnityEngine.UI; public class SensorText ...

  3. JS获取伪元素的属性

    window下的getComputedStyle属性.getPropertyValue属性 // 获取 .element:before 的 color 值 var color = window.get ...

  4. js求最大值最小值

    比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,代码如下: <html> <head> <meta charset=&qu ...

  5. 【转】 android5.1里面的user-app的默认权限设置!

    在 frameworks/base/services/core/java/com/android/server/AppOpsPolicy.java中:public boolean isControlA ...

  6. JQuery案例二:实现全选、全不选和反选

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. Java面试题之多线程打印

    概述 作为程序员经常在面试的时候遇到多线程的问题,我印象比较深刻的就是下面这道题:写两个线程,一个线程打印 1~52,另一个线程打印字母A-Z.打印顺序为12A34B56C……5152Z.看这个题目已 ...

  8. python-之-深浅拷贝二(元组)

    元组比较特殊 1.----元组本身为不可变类型 import copy v1 = (1, 2, 3, 4) v2 = copy.copy(v1) print(id(v1), id(v2)) v3 = ...

  9. Java语法基础学习DayTwenty(反射机制续)

    一.Java动态代理 1.代理设计模式的原理 使用一个代理将对象包装起来, 然后用该代理对象取代原始对象. 任何对原始对象的调用都要通过代理. 代理对象决定是否以及何时将方法调用转到原始对象上. 2. ...

  10. 利用div+css实现九宫格,然后用js实现点击每个格子可以随机更改格子(div)的背景颜色

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...