NGUI实现ScrollView功能】的更多相关文章

NGUI,目前Unity3D Assert Store中最火的2D图形界面工具. 本文假设读者有Unity3D使用经验.有基本了解.NGUI3.6.0 1.新建Pannel(Scroll View),确保Clliping为soft Clip 2.Add Component增加Scroll View 3.在Scroll View下增加一个Grid(UIGrid) 4.在该Grid下增加空游戏对象Item 5.构建Item,加入Label.Sprite(Tiled为背景,simple为前景) 6.选…
ScrollView是NGUI非常好用的一个内置组件,但是效率不好,当子物体过多的时候,一旦开始拖动就帧数狂掉,我目前有3个解决思路: 1. NGUI自带的Example 8 - Scroll View (Camera),用摄像机代替panel进行裁切和移动 2. NGUI自带的Example 14 - Endless Scroll Views,它使用了一个脚本叫做UIWrapContent,这个脚本实现了循环改变子物体位置的功能,可以参考该脚本实现复用Item来实现大列表的功能 3. UIWr…
懒,是老毛病了,周末跑了半马,跑完也是一通累,好久没锻炼了..也是懒的,有时都懒的写博客..最近看到项目中各种滑动列表框,本着要懒出水平来的原则,决定花点时间简单处理下(暂时未做列表太多时的优化):1.首先分析共性方面的东西:逻辑上,都有个基础Item类及对应的管理类ItemManager显示上,都是显示某个基本对象ViewItem,并且都需要管理者UIScrollView(封装为ViewManager) 2.根据初步的分析结果,进行抽象,这里直接使用泛型处理:(这里直接使用了原有的Json插件…
在unity中处理UI事件时,习惯了使用NGUI的UIEventListener,虽然UGUI也有AddListener,但是一个组件只能对应一个函数,不能在一个函数中同时处理多个事件,显得有些麻烦 因为主要平时Button用得比较多,这里以UGUI的Button为例,自己以UGUI的Button的AddListener模仿NGUI的UIEventListener做了一个小封装,能在一个函数处理多个Button using UnityEngine; using UnityEngine.UI; u…
用panel.localCorners而不是panel.finalClipRegion,Region还要再换算 首先通过ScrollView取panel,然后取Corners,它返回值代表4个点,映射的索引分别是: 0 左下  1 左上 2 右下 3 右上…
今天来说说一直都让我在项目中头疼的其中一个问题,NGUI 的scrollView 列表性能问题,实现循环使用item减少性能上的开销. 希望能够给其他同学们使用和提供一个我个人的思路,这个写的不是太完美,目前我在项目中使用了,希望大神能够给更多的建议来优化scrollView. 思   路:通过调整item位置来实现item循环使用,在通过delegate来实现数据刷新 功   能: SetGrid(int imax, ScrollGridSetItem sc) NextIndex() PreI…
一.createScrollView 1.First, select the panel you want to be your scroll view and right-click anywhere in the Scene View to bring up the context menu, then choose Attach -> Scroll View. 2.The last step is to add the UIDragScrollView script to at least…
让我们实际的研究一下如何将NGUI和C#LightEvil结合起来. 这里使用NGUI2.7,因为他是一个开源的版本,NGUI最新的版本未经作者的许可,是不可以带入我们的开源项目使用的. 这个例子完成的功能是从NGUI例子里找出了三个界面,按最下方的按钮依次进行切换 这是在之前的框架演示Mode1的基础上做的 由一个状态机去进行驱动,这也是我推荐各位使用脚本的方式. <=这是脚本,也是程序 Mode1的模式是定义一个接口类,然后由脚本继承此类型实现,因为随时考虑AOT的缘故(要兼容IOS),我们…
上图是一个简要的NGUI的图形工作流程,UIGeometry被UIWidget实例化之后,通过UIWidget的子类,也就是UISprit,UILabel等,在OnFill()函数里算出所需的Geometry缓存(顶点数,UV,Color,法线,切线).PS:之所以要生成这些数据,是为了之后生成mesh来渲染 而UIPanel,通过遍历自己子类下所有的UIWidget组件(已经按深度排序),先创建一个UIDrawCall,然后把该Widget的material,texture,shader对象以…
原地址:http://www.unity蛮牛.com/thread-18220-1-1.html 在次此之前我们先要了解一下下面的我要讲的几个内容: 一.为什么要用NGUI,因为NGUI的可以做屏幕自适应,在各大不同手机分辨率的屏幕上想要实现基本的显示而且不乱象的效果最后还又能快速开发出来,那么无疑还是NGUI比较的好.二.既然是涉及到手机拍照,那么无疑使可以调用前置或者后置的摄像头都可以进行拍照咯. 三.实际上我做的所谓的拍照时利用了手机的截图功能,只是我会在最后保存路径上会将它保存到手机的相…