Unity,UI实现滚动内容
2017-08-03 10:29
801 查看
昨天小伙伴有个需求,需要做一个UI的滚动内容。要在Ipad上实现,最好带惯性效果。于是我二话不说拿起键盘就是敲代码。用Touch来控制,得到每次滑动的deltaPosition。然后移动Panel的位置。今天起来想惯性怎么实现,然后搜了一下。发现只需要用unity的一个组件就可以轻松实现。(lll¬ω¬)心累。实现效果如下:
是不是很赞!
其实这里只是用了一个Unity的组件,叫做ScrollRect:
国际惯例,先详讲属性,再说用法。
Content:这是你需要滑动的内容,最好单独用一个Panel来放置,比如一组按钮,或者一个特别大的图片,抑或是很大的文本框。
Horizontal:是否允许平行滑动。
Vertical:是否允许垂直滑动。
MovementType:移动的类型,Unrestricted:自由的,也就是内容可以随意拖动。Elastic:弹性,内容显示会有一个边界,拖动完之后可以增加一个惯性。Calmped:钳制。不会超出边界。
Inertia:惯性,如果勾选的话,拖动结束之后会有一个缓缓停止的过程。
DecelerationRate:这是减速速率,类似于Damp,勾选到0失去惯性,到1滑动不会停止。
ViewPort:类似于视口的东西,可以定义要显示的范围。
接下来我们就能用这个ScrollRect做一个滑动显示的功能了。只需要把要显示的Panel放在Content之下,就可以愉快的滚动了。布局的话可以使用GridLayout或者手动摆放UI位置也可以。
是不是很赞!
其实这里只是用了一个Unity的组件,叫做ScrollRect:
国际惯例,先详讲属性,再说用法。
Content:这是你需要滑动的内容,最好单独用一个Panel来放置,比如一组按钮,或者一个特别大的图片,抑或是很大的文本框。
Horizontal:是否允许平行滑动。
Vertical:是否允许垂直滑动。
MovementType:移动的类型,Unrestricted:自由的,也就是内容可以随意拖动。Elastic:弹性,内容显示会有一个边界,拖动完之后可以增加一个惯性。Calmped:钳制。不会超出边界。
Inertia:惯性,如果勾选的话,拖动结束之后会有一个缓缓停止的过程。
DecelerationRate:这是减速速率,类似于Damp,勾选到0失去惯性,到1滑动不会停止。
ViewPort:类似于视口的东西,可以定义要显示的范围。
接下来我们就能用这个ScrollRect做一个滑动显示的功能了。只需要把要显示的Panel放在Content之下,就可以愉快的滚动了。布局的话可以使用GridLayout或者手动摆放UI位置也可以。
相关文章推荐
- 用js实现控制内容的向上向下滚动效果
- Android UI 之居中绘制文本内容的正确方法——实现自定义一个TextView
- Unity中实现弹性滚动列表基于UGUI
- 利用KVO实现 UITextView 通过代码方式设置内容后,自动滚动到最后一行
- vue使用mint-ui实现下拉刷新和无限滚动的示例代码
- javscript实现滚动条滚动到页面底部自动加载增加页面内容
- jquery weui 实现手机滚动刷新,结合底部tabber
- jquery.blockUI.js实现上传滚动等待效果
- Unity调用百度地图(可实现模型、UI覆盖)
- [Unity]Unity开发NGUI代码实现ScrollView(滚动视图)
- UI动画架构(上下滚动,里面View可以实现动画<透明,移动,缩放,变色>l)
- 表头固定内容可滚动表格的3种实现方法
- <marquee>aa</marquee>实现内容滚动时首尾相连,不出现空白的时候
- Unity实现UI渐变效果(UGUI)
- 用js实现控制内容的向上向下滚动效果
- jQuery实现页面滚动时动态加载内容的方法
- HTML窗体内容自动向下滚动,JAVASCRIPT实现窗体内容向下滚动。
- jquery.blockUI.js上传滚动等待效果实现思路及代码
- iOS菜单滚动联动内容区域功能实现
- JQuery实现页面随滚动条滚动而动态加载内容的效果