之前也看了不少童鞋谢了关于NGUI的scroll view的制作
下面我写下自己的制作过程以及心得,希望对童鞋们有所帮助。
1.首先建立一个960*640的背景参考http://game.ceeger.com/forum/read.php?tid=5314
效果如图:先借用下三国杀的背景图哈,原图大小是960*640,因为我做的both缩放,很不错的.
2.随便做一个atlas。资源在网上随便找一个,等下作为滑动对象。
3.a)在panel下建立两个空的游戏对象,其中pane(view)是等下要展示的view的部分,panel(window)为辅助view展示的,如图
b)给panel(view)添加uidragable panel(script)并设置参数,如图

备注:clipping选择soft clip
size为你需要展示拖动区域的大小,我的展示区域是横向拉动,满屏,图集高度为280.我这里设置稍微大点。就给了300
最下面是选择scroll bar(稍后会给加上)
4.
a)在panel(view)中新建一个空的游戏对象命名为UIGrid
b)给UIGrid添加uigrid脚本
c)设置uigrid脚本参数
备注:uigrid会对其子对象默认排序...
cell width;cell height指在scroll view中的排列的(或者你认为是uigrid的子对象)元素的高和宽
5.给UIGrid添加子节点(这里我添加一个sprite,官网demo是item下再添加sprite。道理是一样)
a)添加sprite并给sprite加上uidragpanelcontents
并设置如图

b)复制几个sprite
6.给panel(window)加一个拉动区域
如图:
7.panel(window)下添加scroll bar
同时要设置,如图
8.添加两个button,动态添加UIGrid下的节点
效果展示下:

采坑总结:

                  一、新建一个对象的时候,需要确定这个对象的显示层级(Layer选项)一定要和NGUI摄像机设定的显示层级一样。

                  二、如果添加的Component中有摄像机选项的话,那么一定要检查摄像机一定要设置成NGUI的摄像机,因为一般场景里面除了NGUI的摄像机之外还有渲染场景物体的摄像机。

                  三、两个Panel不要设置为同一depth,不然各种调不对。

                  四、uidragpanelcontents和Colider一定要挂在同一个物体身上,不然不会响应拖拽事件,比如你在Grid对象下挂了一个Item对象,这个Item对象下面有一个Sprite,如果你把uidragpanelcontents放在Sprite上,把Colider放在Item上,那么是不会响应拖拽事件的。

 

NGUI之scroll view的制作和踩坑总结的更多相关文章

  1. NGUI之scroll view制作,以及踩的坑总结

    http://blog.csdn.net/monzart7an/article/details/23878505 链接: http://game.ceeger.com/forum/read.php?t ...

  2. NGUI例子Scroll View场景中item添加点击后自动滑到终点

    http://blog.csdn.net/luyuncsd123/article/details/22914497 最近在做一个项目的UI,需求是1.拖动items后当永远有一个item保存在中间位置 ...

  3. Unity3D基础学习 NGUI Example 7-Scroll View(Panel)制作固定包裹栏,点击传递参数显示物体

    最终效果如下: 实现ScrollView主要是NGUI的三个脚本"UIDraggable Panel","UIGrid","UIDrag Panel ...

  4. Unity NGUI制作scroll view

    unity版本:4.5 NGUI版本:3.6.5 参考链接:http://blog.csdn.net/monzart7an/article/details/23878505,作者:CSDN 冬菊子   ...

  5. NGUI系列教程十(Scroll View实现触摸滚动相册效果)

    NGUI中提供了两种Scroll View 一种是通过手指或鼠标滑动视图时移动平面物体,另一种则是直接移动摄像机,他们各有各的好处.但是NGUI提供的Scroll View很难实现类似Android ...

  6. (转)ngui3.5.7 版本Scroll View实现方法

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xyo123.blog.51cto.com/6369437/1405861 现在网 ...

  7. 关于Unity中stretch的分开使用、预制体、Scroll View的UI节点

    一.上次讲的菊花的四个花瓣,只讲了四个花瓣和在一起的时候的作用,现在是分开的菊花的四个花瓣的作用 1.创建一个Canvas2.对Canvas进行初始化3.创建一个Image的UI节点作为Canvas的 ...

  8. Scroll view 备忘

    Stroyboard中使用ScrollView 当我们使用Storyboard开发项目时,如果要往控制器上拖入一个ScrollView并且添加约束设置滚动区域,是有特殊的规定的: 拖入一个scroll ...

  9. Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,相似图片浏览器

    MAC : XCode -> Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,类似图片浏览器 STEP1:将两个目录复制到project里面ImageBrowser ...

随机推荐

  1. lua字符串

    本文内容基于版本:Lua 5.3.0 概述 Lua字符串中的合法字符可以是任何的1字节数据,这包括了C语言中表示字符串结束的'\0'字符,也就是说Lua字符串在内部将以带长度的内存块的形式存储,存储的 ...

  2. jvisualvm工具使用

    VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带(java启动时不需要特定参数,监控工具在bin/jvisualvm.exe). https:// ...

  3. python 连接sql server数据库的示例代码

    首先,到http://pymssql.sourceforge.net/下载pymssql模块,必须安装这个模块才可以用python连接mysql 以下是sql server的操作代码,需要注意字符集 ...

  4. 【转】Linux删除文件未释放空间问题处理

    linux里的文件被删除后,空间没有被释放是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么 ...

  5. 接收与发送邮件(XE10.2+WIN764)

    千万不要用QQ邮箱测试,我试了半天,没整明白. 一.设置信息 POP3接收邮件POP3服务器:exchange.grandsoft.com.cn端口:110账号:zhujq-a@glodon.com密 ...

  6. SQL server 2005如何设置一个或几个字段唯一约束?

    --建立是在三个字段上的唯一约束 alter table Tab add constraint uq_id unique(shipType, shipsession, Territory)

  7. Unity3D可以查看YAML格式的场景文件,采用Notepad++

    在Editor Settings 将Asset Serialization 的 mode设置成Force Text,否则不能查看YAML格式! Unity圣典描述:Textual Scene File ...

  8. 【C#】往按钮事件中传递自定义参数

    情景:代码动态生成的按钮,需要自定义点击事件.但是生成的点击事件的参数是固定的,如何才能传入自定义的参数? Button btn = new Button() { Content = "这是 ...

  9. spi 总线协议记录

    摘抄至: http://blog.csdn.net/skyflying2012/article/details/11710801 概述: SPI, Serial Perripheral Interfa ...

  10. 数据库——SQL中EXISTS怎么用1(转)

    EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False 方法/步骤   EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返 ...