Unity UGUI 利用Scroll View动态生成列表
2017-07-18 21:29
591 查看
Unity UGUI 利用Scroll View动态生成列表
本人菜鸟一枚,通过博客记录自己踩过的坑,如果这篇文章有幸被您看到,并对您有所帮助,这将是我的荣幸。如果您有更好的想法,希望您不吝赐教,小弟感激不尽。Unity自4.6版本开始自带UGUI,经过几个版本的发展UGUI已经很好用了,不多说直奔主题
很多时候我们需要动态生成一个列表,列表的长度不确定,很可能会超出我们的屏幕或者程序窗口的宽度,这时候我们需要添加一个Scroll View的UI组件。这时候你会发现Content的长度也是不确定的,我们需要在生成列表的同时,修改Content的长度,才能使得Scroll View组件生效。这时我们需要利用到UGUI中的布局组件(LayOut),具体步骤如下;
1.新建画布Canvas,并在画布上新建一个Scroll View组件,结构如图
2.添加Layout组件,选中Viewport中的Content添加组件,我们添加一个Grid Layout Group,添加一个Content Size Fitter组件
3.具体参数按需求设置,如
4.添加一个按钮,并为其绑定点击事件,通过点击按钮生成列表
代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyList : MonoBehaviour {
//public
public GameObject originObject;
public Transform parentTransForm;
/// <summary>
/// 克隆一个GameObject
/// </summary>
public void InstantiateList()
{
GameObject.Instantiate(originObject, parentTransForm);
}
}
5.新建一个空物体把脚本拖到空物体上。如图
6.运行效果如图
相关文章推荐
- 浅谈如何利用PB实现树型列表动态半透明提示(二)(原
- 利用labview动态生成树
- 如何在SpringMVC框架中利用Java反射机制和Javassist实现Java对象、属性、注解的动态创建生成
- 利用Ext Js生成动态树
- 利用table动态生成表格并填充内容/和panel做一个可控制显示/隐藏的小玩意
- 利用@DynamicInsert和@DynamicUpdate生成动态SQL语句
- 利用Java动态生成 PDF 文档
- 利用ASP.NET一般处理程序动态生成Web图像
- angular 利用控制器中的变量动态生成tab选项卡
- 如何在treeview中利用数据动态生成树?
- 利用XMLHTTP将动态网页生成静态网页
- 【SSM学习笔记】动态生成jsp下拉框列表内容的一种方法
- Hibernate利用@DynamicInsert和@DynamicUpdate生成动态SQL语句
- 利用PB实现树型列表动态半透明提示
- C#利用QRCode动态生成自定义二维码图片
- 利用配置实现企业网站快速搭建(动态内容生成静态网页)
- 利用Helix Server的SMIL支持在ASP中生成媒体流的播放列表
- 利用C#反射为DO映射对象数组生成一个用于列表显示的通用解决方案
- .NET动态生成PDF文件(利用iTextSharp)
- mui 通过JSON动态的生成列表