Unity UGUI 利用Scroll View动态生成列表

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.运行效果如图

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值