4.拼接数据结构
4.1 知识点
回顾模版配置
根据上节课的配置模板的结构可以知道,之后我们主要需要动态生成的内容分成以下四部分:
- 控件声明
- 控件查找
- 控件事件监听
- 控件事件响应函数
会不停的查找控件,不停的拼接这四部分的内容,最终插入拼接到这个模板文件中。
因此我们可以声明一个数据结构类,用来表示一个控件的这四个部分,方便我们进行拼接。
创建数据结构拼接信息类
声明声明、查找、监听、响应函数四个字段,并添加+法运算符重载方便两个控件信息的拼接。
/// <summary>
/// 控件动态生成相关代码的字符串 数据结构类
/// </summary>
public class ControlStrInfo
{
// 用于表示一个控件的声明相关字符串
public string nameStr;
// 用于表示一个控件的查找相关字符串
public string findStr;
// 用于表示一个控件的事件监听相关字符串
public string listenerStr;
// 用于表示一个控件的事件监听响应函数相关字符串
public string funcStr;
/// <summary>
/// 为了方便多个控件的相关信息进行拼接用
/// </summary>
/// <param name="one"></param>
/// <param name="two"></param>
/// <returns></returns>
public static ControlStrInfo operator +(ControlStrInfo one, ControlStrInfo two)
{
one.nameStr += two.nameStr;
one.findStr += two.findStr;
one.listenerStr += two.listenerStr;
one.funcStr += two.funcStr;
return one;
}
}
4.2 知识点代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 控件动态生成相关代码的字符串 数据结构类
/// </summary>
public class ControlStrInfo
{
//用于表示 一个 控件的 声明相关字符串的
public string nameStr;
//用于表示 一个 控件的 查找相关字符串的
public string findStr;
//用于表示 一个 控件的 事件监听相关字符串
public string listenerStr;
//用于表示 一个 控件的 事件监听响应函数相关字符串
public string funcStr;
/// <summary>
/// 为了方便 多个控件的相关信息进行拼接用
/// </summary>
/// <param name="one"></param>
/// <param name="two"></param>
/// <returns></returns>
public static ControlStrInfo operator +(ControlStrInfo one, ControlStrInfo two)
{
one.nameStr += two.nameStr;
one.findStr += two.findStr;
one.listenerStr += two.listenerStr;
one.funcStr += two.funcStr;
return one;
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com