ugui__scrollview补充
来源:互联网 发布:淘宝网账号怎么申请 编辑:程序博客网 时间:2024/05/22 14:35
ScrollView控件属于一种通用组件,而在UGUI中目前还没有这种组件,因此需要我们自己来做。过程当中会遇到较多的坑,需要自己写一些脚本来进行控制。这里介绍一下制作流程,避免重复踩坑。
下面以好友列表为例进行介绍:
- Hierarchy结构
如下,UIScrollViewFriend是ScrollView的RootUI,UIScrollView用于布局Items,方便动态添加和删除Items并正确布局他们,并界定UIScrollViewFriend的显示区域。 - 每个组件挂机的脚本:
UIScrollViewFriend - Anchor对齐方式选择不一,这个根据需求自己决定;
- ScrollRect用于确定ScrollView中显示的内容:Content域用于设置内部显示的内容,因此这里选择的是下层的UIScrollView,Horizontal和Vertical是选择拖动的方向支持,Horizontal Scrollbar和Vertical Scrollbar可以和ScrollBar结合使用;
- Canvas Renderer和Image和Mask共同构成遮罩,用于设置内容可见区域;
- UIScrollViewSelector用于点击事件处理。加上这个脚本的原因是,如果在Item上每个Item都加上Event Trigger响应事件,则ScrollView的拖动事件就无法响应,因为Item截取了输入信息。因此我们的做法是由ScrollView统一负责事件处理,然后分发给不同的Item,因此每个Item上需要挂接一个脚本与此对应,这个后面介绍。
Event Trigger用于获取事件进行处理,需要响应Drag事件和Pointer Up事件,然后响应函数是UIScrollViewSelector的OnDrag和OnPointerUp函数。
ScrollView
Grid Layout Group用于自动布局每个Item的位置,需要设置好每个Item的宽度和高度以及对齐方式等;
UIScrollViewFriend用于添加下面Item,这个类继承自UIMFScrollView,AddChild后需要调用UIMFScrollView的RefreshSize方法改变自身大小和所有的孩子的总大小相同。
ScrollItem
UIFriendItem继承自IScrollViewSelect,需要实现Select函数,然后Start的时候需要将自己注册到上层的UIScrollViewSelector中,以正确处理点击事件。
因此总结下来需要自己实现两个脚本:
- 一个需要继承自UIMFScrollView,用于在添加Item时动态改变ScrollView的大小;
- 一个需要继承子IScrollViewSelector,用于处理点击选择事件,在其中进行点击事件的处理。
0 1
- ugui__scrollview补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- 补充
- log4j补充
- 一点补充
- 一点点补充
- 一点补充
- 昨天补充:
- 磁盘补充
- nltk 3.0 的parse
- svn服务器的搭建和使用2
- Hibernate映射解析——关联映射(四)
- C# 克隆 基类
- bool
- ugui__scrollview补充
- 堆排序
- unity 查找物体的写法 和 设置动画在某各地方倒着播放
- <七>AOP面向切面——配置bean.xml文件方式声明切面(附源码)
- 李嘉诚传-白研著---不学习,不复习,永远没出息2014.11.30
- SVN服务器搭建和使用三
- 键盘键值分类描述
- 重装系统后软件安装记录
- iOS UIlable中文字过长时