unity3D创建英雄选择栏
2015-06-22 21:45
736 查看
1、创建一个Image,更改名称为FriendList,在FriendList下面创建一个空对象改名为List,创建一个Scrollbar,层级视图如下
2、在FriendList的Inspector面板中调节RectTransform,调节List的Inspector面板RectTransformt,如图。
3、FriendList添加组件Scroll Rect,勾选Horizontal选项,Horizontal Scrollbar选择Scrollbar,以及Mask组件
4、List添加Grid LayOut Group组件设置如图所示
5、给List添加一个FriendList 脚本
编辑脚本
效果图如下
2、在FriendList的Inspector面板中调节RectTransform,调节List的Inspector面板RectTransformt,如图。
3、FriendList添加组件Scroll Rect,勾选Horizontal选项,Horizontal Scrollbar选择Scrollbar,以及Mask组件
4、List添加Grid LayOut Group组件设置如图所示
5、给List添加一个FriendList 脚本
编辑脚本
using UnityEngine; using System.Collections.Generic; using UnityEngine.UI; public class FriendList : MonoBehaviour { //动态的生成好友列表 public GameObject prefab;//图片预设体(sprite类型) RectTransform rfWith;//定义List的RectTransform组件 float with;//定义变量 GridLayoutGroup glg;//定义List的GridLayoutGroup组件 void Start() { //获取组件 rfWith = GetComponent<RectTransform>(); glg = GetComponent<GridLayoutGroup>(); //随机产生英雄图片个数 int num = Random.Range(3, 11); for (int i = 0; i < num; i++) { //实例化prefab GameObject go = Instantiate(prefab) as GameObject; go.transform.SetParent(transform);//将List设置为prefab的父类 } with = num * glg.cellSize.x + (num - 1) * glg.spacing.x;//根据glg以及num动态生成rfWith的值 rfWith.sizeDelta = new Vector2(with, glg.cellSize.x);//设置值 } }
效果图如下
相关文章推荐
- unity学习笔记
- 如何用unity3D编辑英雄技能冷切框
- LZMA C# SDK 结合 UPK 打包压缩 多文件夹 Unity3d实例
- Unity3d基本优化条目
- 【Unity3d】Animator和Animation组件使用注意事项
- 【Unity3d】如何开发Unity自动化补丁工具
- 【Unity3d】热更新Assetbundle资源以及需要注意的地方
- Unity3D 系统宏
- Unity3D中摄像机常用技巧Dolly&nbs…
- Unity3D中的Grobal Illuminit…
- unity3D中阴影渲染的shadow a…
- LZMA C# SDK 子线程压缩与解压缩 Unity3d实例
- 【Unity3d】在Unity中播放视频
- 【Unity3d】注意C#的字符串拼接效率问题
- 【Unity3d】自动版本构建: 如何在Windows平台下自动打开资源管理器并且选中指定文件
- Unity该插件NGUI学习(1)—— 环境结构
- Unity教程之再谈Unity中的优化技术
- 开始Unity3D参观考察
- Mono2.0 对C#闭包 与 donet 不同的实现导致Unity的Bug 及解决方案
- unity平台的预处理