公告栏对话框管理(课堂笔记)

来源:互联网 发布:开源cms系统 php商城 编辑:程序博客网 时间:2024/06/05 14:44

1,创建一个可序列化的基类DialogsLibrary来存储所有的对话;
创建一个列表 public List dialogs来存储所有对话,Dialog这个类存储一段对话,
2,初始化列表
void Awake()
{
if (dialogs == null) dialogs = new List();
};
3.提供添加对话的方法
///
/// 添加对话的方法
///
///
public Dialog AddDialog()
{
Dialog dialog = new Dialog();
dialogs.Add(dialog);
return dialog;
}
4,移除对话的方法

5,通过ID来查找对话的方法
public Dialog GetDialogById(string id)
{
Dialog dialog = dialogs.Find(d => d.id == id);
return dialog;
}
6,返回所有的ID
public string[] GetDialogsId()
{
string[] strings = new string[dialogs.Count];
for (int i = 0; i < dialogs.Count; i++)
{
strings[i] = dialogs[i].id;
}
return strings;
}


1.创建一个实体可序列化的类Dialog来存储一次对话的内容。提供一个字符串类型的字段ID;创建一个字典 DialogItem来存储一段对话的内容,
2.创建构造函数,初始化字典和ID
public Dialog()
{
id = “Dialog” + this.GetHashCode();
dialogItems = new List();
}
3.提供一个添加对话的方法:
public DialogItem AddNewItem()
{
DialogItem item = new DialogItem();
dialogItems.Add(item);
return item;
}
4:提供删除对话的方法;重写ToString
public override string ToString()
{
return id;
}

——————————————————
1.创建一个可序列化的实体类DialogItem ,来存储 一次对话中的一段;
2,提供对话需要的字段,名字,图标;