您的位置:首页 > 产品设计 > UI/UE

NGUI-UIScroll View的使用及注意点

2014-09-04 21:19 190 查看
项目层次:



scrollviewbg是600x150的背景图,Inspector视图如下:



panel就是scrollview父容器了,size为600x150,Inspector视图如下:



item就是scrollview里面的每一项了,大小200x150,Inspector视图如下:



以上附加的脚本都是默认设置,此时运行程序,效果如下:



可以看出最后不需要显示的图片没有隐藏,解决办法就是设置panel下UIPanel的Clipping,把此项设置为soft clip即可!运行效果:



如果想实现这样的效果:当拖拽到最后一张图片的时候,此时不是就没了,而是播放第一张图片,相当于把这些图片串成一个圆圈一样,此时我们只要给Panel加个UIWrap Content脚本即可,Item Width为每一项的宽度,我这里的每一项宽度为200,所以我设置成200,Cull Content不要勾选,勾选的情况等下讲,此时效果如下:



但使用UIWrap Content脚本会出现一个问题就是,程序未运行时,每一项展现的次序分别为1,2,3,4,5,其中4,5是隐藏的,那么程序运行起来应该展现的是1,2,3

但是程序运行起来,展现的确实5,2,3,所以如果想展现的是1,2,3的话,那么就要把1放在5的位置,2放在1的位置,3放在2的位置即可!

下面说说Cull Content被勾选的情况:

我们先看看被勾选时运行的效果吧,对一个选项不明白的话,有时候运行程序就能看出区别了:



从效果图可用看出,图片并不会绕圈播放,而是显示空白,而且只有点击每一项才能进行拖动,因为只有每一项添加了UIDrag Scroll View拖拽脚本,如果想点击背景的空白处也能拖拽,控制每一项向左或向右移动,此时我们只要给scrollviewbg添加一个UIDrag Scroll View和Box Collider,并且UIDrag Scroll View脚本的Scroll View设置为panel即可!Drag Scroll View的Scroll View 属性可以指定特定的带有Scroll View的拖拽层,如果不指定在运行时会自动匹配父节点带有绑定Scroll View的拖拽层。

效果如下:



说下UIScroll View脚本每一个选项的含义:

Content Origin:表示子项的起始位置,

选择left:


选择right:


其他的自己看看就知道了

Movement:拖拽的方向,有垂直,水平,自定义,自由四个可选项

Drag effect:拖拽效果,有三个选项,None、Momentum与MomentumAndSpring,None不使用任何效果,Momentum表示使用动量效果,(动量与None在效果上看不出任何差异),MomentumAndSpring带有弹力效果,使用该效果在运行时会自动生成一个Spring Panel的脚本。

scroll wheel factor:滚轮因子,只有当光标放在了panel上,并且scroll wheel factor不为0,那么此时转动鼠标滚轮,panel下的子项会进行滑动,就相当于直接用鼠标点击拖拽的效果一样,只不过现在可以用滚轮替代,scroll wheel factor可以为正数,也可以为负数,只是滑动的方向相反罢了,正负控制的是方向,值的大小,控制的是滑动的力度

momentum amount:动量的数量,通俗的讲就是拖拽产生弹力的大小:(下面的效图果使用的力是相同的)

值为10的效果:


值为1000的效果:


使用默认值35即可!

restrict within panel:限制在panel中,如果不勾选的话,就不会产生弹力效果了!

Cancel Drag if fits:如果适合取消拖动,不懂,默认值即可

smooth drag start:平滑拖动开始,默认值即可

IOS Drag Emulation:iOS阻力模拟,默认值即可

scroll bars:分为垂直方向和平行方向的滚动条,赋值类型为UIProgress Bar类型!

Show Condition也有三个选项:Always表示总是显示滚动条,OnlyIfneeded如果必要就显示,不然隐藏,whendragging表示拖拽时产生滚动条

下面我先展示下Scroll View配合UIProgress Bar产生的效果图,对UIProgress Bar不懂的,我将出一篇关于这个的,敬请关注!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: