(一)可拖动窗体的实现:

1:添加一个Sprite为鼠标点击区域,改名为:DragSprite

2:给DragSprite添加Collider

3:给DragSprite添加Drag Object ,脚本为"UIDrag Object"

4:为UIDrag Object下的Target赋值:拖动Panel到Target。

当我们拖动窗体时,有可能把窗体拖出屏幕外面,我们可以勾选UIDragObject的KeepVisible,然后把拖动区域的图片设置到ContentRect下,这样当窗体跑出屏幕后,会被自动弹回来


(二)改变窗体大小的实现:

UIDragResize脚本

1:添加一个Sprite为鼠标点击Drag区域

2:将该Sprite锚定到顶层Sprite的右下角

3:给该Sprite添加Collider

4:给该Sprite添加Drag-Resize Widget,脚本为"UIDragResize"

5:为UIDragResize下的Target赋值:拖动顶层的Sprite添加到Target。

5:设置Pivot为BottomRight,此为改变大小的点。


(三)ScrollView的实现

1.添加滚动条即ScrollBar。

 滚动条我要做成横向的,所以把Direction设置成:LeftToRight;

 调整Background 和Foreground的长度,两者的Dimensions的长必须一致,宽根据自己的感觉调整,无所谓;

(2)创建一个ScrollView。

 调整好ScrollView上UIPanel的裁剪区域。

  

调整UIScrollView :

  Content Origin :这是下面子项目的对齐方式,为了从左边开始,将其设置成Left

Movement: Horizontal 即水平位移

  其他的默认即可

将刚才创建的ScrollBar赋值到ScrollBars下的Horizontal。如果要做垂直方向的要赋值到Vertical下。。

(3)添加UIGrid,此脚本为子项排布

  Arragement:排布方向

        Horizontal:水平方向

        Vertical:垂直方向

  Cell Width: 每个子项占据的宽度

  Cell Height: 每个子项占据的高度

(4)在ScrollView下创建子项。

 随意创建几个button。

   然后运行就能看到效果了。

(5)实现子项的拖拽

  只需为每个button添加UIDragScrollView,就能实现点击拖拽功能了。很简单吧。。。

NGUI3.5系列教程之 一些小功能的实现的更多相关文章

  1. Spring 系列教程之容器的功能

    Spring 系列教程之容器的功能 经过前面几章的分析,相信大家已经对 Spring 中的容器功能有了简单的了解,在前面的章节中我们一直以 BeanFacotry 接口以及它的默认实现类 XmlBea ...

  2. Python Twisted系列教程7:小插曲,Deferred

    作者:dave@http://krondo.com/an-interlude-deferred/  译者:杨晓伟(采用意译) 你可以从这里从头开始阅读这个系列 回调函数的后序发展 在第六部分我们认识这 ...

  3. 【redis 学习系列08】Redis小功能大用处02 Pipeline、事务与Lua

    3.Pipeline 3.1 Pipeline概念 Redis客户端执行一条命令分为如下四个过程: (1)发送命令 (2)命令排队 (3)命令执行 (4)返回结果 其中(1)和(4)称为Round T ...

  4. Vue + Webpack + Vue-loader 系列教程(1)功能介绍篇

    原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ Vue-loader 是什么? vue-loader 是一个加载器,能把如下格式的 Vue ...

  5. 【redis 学习系列07】Redis小功能大用处01 慢查询分析以及Redis Shell

    Redis提供了5种数据结构已经足够强大,但除此之外,Redis还提供了诸如慢查询分析.功能强大的Redis Shell.Pipeline.事务与Lua脚本.Bitmaps.HyperLogLog.发 ...

  6. 【全网最全的博客美化系列教程】02.添加QQ交谈链接

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

  7. 【全网最全的博客美化系列教程】08.自定义地址栏Logo

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

  8. 【全网最全的博客美化系列教程】01.添加Github项目链接

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

  9. Smart3D系列教程4之 《案例实战演练1——小物件的照片三维重建》

    一.前言 Wish3D出品的Smart3D系列教程已经推出3讲了,分别是关于倾斜摄影三维建模原理应用.照片采集技巧.Smart3D各个功能模块的作用,它们都是围绕Smart3D建模软件进行的讲解.那么 ...

随机推荐

  1. Pascal 语言中字符与字符串

    [题目]输入一段文章(255个字符以内),求文章中单词的个数,相同单词只记一次,The 和 the 视作相同. [敲代码] //网友代码 var article,w:string; arr:array ...

  2. 转:YUV RGB 常见视频格式解析

    转: http://www.cnblogs.com/qinjunni/archive/2012/02/23/2364446.html YUV RGB 常见视频格式解析 I420是YUV格式的一种,而Y ...

  3. GAN

    GAN(Generative Adversarial Nets),产生式对抗网络 存在问题: 1.无法表示数据分布 2.速度 3.resolution太小,大了无语义信息 4.无reference 5 ...

  4. # HTML && CSS 学习笔记

    https://www.zybuluo.com/denglongku/note/532786 1.Div左右居中 <div>1<div> div{ width:300px; h ...

  5. bind() to 0.0.0.0:80 failed (98: Address already in use)

    You can kill it using: sudo fuser -k 80/tcp And then try restarting nginx again: service nginx start

  6. MySQLdb模块安装-win环境

    原帖地址:http://blog.csdn.net/wklken/article/details/7253245 使用python访问mysql,需要一系列安装 linux下MySQLdb安装见  P ...

  7. Part 5 Select statement in sql server

    Select specific or all columns select * from 表名 select * from Student select 列名,列名... from 表名 select ...

  8. Javascript验证用户输入URL地址是否正确

    <script type="text/javascript">function checkUrl() { var url = document.getElementBy ...

  9. UI2_UIGesture

    // // ViewController.h // UI2_UIGesture // // Created by zhangxueming on 15/7/9. // Copyright (c) 20 ...

  10. php连接到数据库

    html代码: <form action="php_mysql_add.php" method="post"> 用户名: <input typ ...