UIToolkit编辑器练习(一)

本文介绍了一次使用Unity的UIToolkit创建一个XML编辑器的过程,包括创建Editor窗口、生成和修改XML文件、使用ListView展示数据以及实现编辑器内同步显示XML修改。教程详细讲解了如何利用LinqToXml处理XML,以及在Editor窗口中集成功能。
摘要由CSDN通过智能技术生成

写一个UIToolkit的文章,记录一下UIToolkit的使用方式(一阵时间不用都快忘了),顺便写一个简单的物品编辑器
数据保存为xml,使用LinqToXml,编辑器使用UIToolkit制作


需要UIBuilder插件

1.创建Editor窗口

通过Assets->Create->UIToolkit->Editor Window创建窗口ItemDBEditor(可以只选C#和uxml)
然后通过UIBuilder,做一个简单的窗口
在这里插入图片描述
然后修改ItemEditor的代码,将修改一下创建窗口的代码

	//这里填工具栏路径
    [MenuItem("Editor/ItemDBEditor")]
    public static void ShowWindow()
    {
   
        ItemDBEditor wnd = GetWindow<ItemDBEditor>();
        wnd.titleContent = new GUIContent("ItemDBEditor");
    }

    private void OnEnable()
    {
   
        VisualElement root = rootVisualElement;
        //这里填上自己的uxml路径
        var xml = AssetDatabase.LoadAssetAtPath<VisualTreeAsset>("Assets/ItemSystem/ItemDBEditor.uxml");
        xml.CloneTree(rootVisualElement);
    }

这时候在Unity中通过工具栏Editor->ItemEditor打开编辑器了

2.生成Xml

在这里我主要使用LinqToXml,因为比较方便
首先在编辑器的Toolbar中添加一个ToolbarButton,用来生成Xml文件(当然最初始的文件也可以手动创建)
在这里插入图片描述
然后添加代码

private void OnEnable()
{
   
	//...
	//为这个Button注册创建xml的事件
	ToolbarButton AddXmlButton = root.Q<ToolbarButton>("CreateXml");
        AddXmlButton.clicked += () => 
        {
   
            string filePath = Application.dataPath + @"/ItemDB.xml";
            if (!File.Exists(filePath))
            {
   
                //创建XML文档实例
                XmlDocument xmlDoc = new XmlDocument();
                //创建root节点,也就是最上一层节点
                XmlElement xRoot = xmlDoc.CreateElement("ItemDatabase");
  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值