先看效果
基础版
添加Scale变换
基础版
- 首先分析一下,每次滑动完成,屏幕哪个页面显示占的多一点就自动滑动到那个页面。所以要知道2个页面交点时滚动条的值和每个页面完全显示滚动条的值。怎么算出来的,比如现在有3个页面,带进去看看。
- 然后每次拖拽结束判断应该移动到哪个页面,举个例子,比如现在滑动到第二个页面和第三个页面之间,然后第二个页面占的比较多一点,类似下面。当前滑动值小于_signProgress[1]所以设置目标滑动值_targetVal。
- 有了目标值,只需要在Update进行一个插值就可以了
Scale变换版本
- 这个网上我看几个版本的,有算那个比例的,我脑子没转过来。而且算比例的遍历3遍好像。我就是按照当前滑动值,计算距离然后每个子物体都进行一个Scale的设置如下。
_targets
就是每个页面完整显示时的值。
FixedInterval
是2个页面之间的间距,因为_targets[0]一直等于0,所以取得_targets[1]
遍历所有子节点计算当前滑动值与每个页面完全显示滑动值,然后除FixedInterval得到比例,然后进行插值
我的表述可能会有点问题,如果看不懂,还是直接拉下来项目看看就知道了