Unity之UGUI脚本自动生成

博客迁移

个人博客站点,欢迎访问,www.jiingfengji.tech

正文

在做UI开发工作中,往往会有很多重复工作,比如用FindChild找可交互的ui呀,比如给这些ui加Listener等,那么这里提供一种思路,通过给UI中需要加交互事件的ui物体加上标记脚本,然后就可以根据这些标记得出相对于UIRoot的路径,得到路径就可以通过FindChild得到交互UI物体,然后给他们加上事件监听即可。

先定义一个枚举

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public enum UIType 
{
    UIRoot,
    Transform,
    Image,
    RawImage,
    Button,
    Toggle,
    Slider,
    Scrollbar,
    Dropdown,
    InputField,
    ScrollRect,
}

然后上一个效果图来给UI物体加标记

从图中可以看出,加完标记之后,生成代码。
先看示例的UIDialog
Unity之UGUI脚本自动生成_第1张图片
其中图中两一个Image,一个InputFiel,一个Button,一个Toggle
生成的代码如下:

using UnityEngine;
using UnityEngine.UI;
using System;

public class TestDialog : MonoBehaviour
{
    private Image m_Image = null;
    private InputField m_UserNameInputField = null;
    private Button m_CloseButton = null;
    private Toggle m_SexToggle = null;

    void Awake()
    {
        m_Image = transform.FindChild("Image").GetComponent();
        m_UserNameInputField = transform.FindChild("Image/UserNameInputField").GetComponent();
        m_CloseButton = transform.FindChild("CloseButton").GetComponent

生成代码的逻辑比较长,就不放出来了,原理就是按照规范拼StringBuilder,包括变量名前缀,函数名规范等,以及插入等长度的空格代替tab、还有换行使得代码对其等等。

####这个只是提供一种思路,Demo以及源码会放在下面,大家有兴趣可以参考一下,转载请注明原文地址。

Demo源码下载地址:
链接:http://pan.baidu.com/s/1i4YbIML 密码:uyg9

下载链接如有失效,请即时联系
以上知识分享,如有错误,欢迎指出,共同学习,共同进步

你可能感兴趣的:(UGUI,Unity)