您当前的位置:首页 VR开发 Unity 正文

Unity3D:如何在自定义编辑器中使用可重排序列表

查看: 2292| 评论: 0 2016-10-27 03:03 PM| 发布者: PeckBang |来自: 蛮牛

可重排序列表(ReorderableList)在3D中并不常用,但是充分利用它可以使自定义编辑器更专业。

  
本文介绍了可重排序列表的典型应用。

创建一个类,命名为Country。

  

创建一个MonoBehavior类,在其中定义一个Country类型的List。

  

创建一个自定义编辑器

  

声明一个可重排序列表的实例(1)
将这个实例和之前MonoBehaviour 类中的List<Country>SupportedLanguageList实例关联起来。
在OnInspectorGUI()函数中调用DoLayoutList()函数。

现在你的界面看起应该是这样的:
  

现在我们在默认界面上做一些改进:

将下面的代码加入自定义编辑器的OnEnable函数中,对外观进行一些微调。

  
现在你的界面应该是这样的:

  

再更换一个这个控件的标题:

  

现在的界面应该是这样的:

  

你可以随意定制这个可排序可拖动的列表!


需要注意的是,在模型类中(如本例的Country),你必须将暴露出来的属性定义为public字段,否则当调用
代码
var name = element.FindPropertyRelative(“Name”);
会获取不到!
还要注意的是,你需要引入命名空间:
代码
using UnityEditorInternal;
52VR.COM微信扫一扫
52vr公众号
专注于VR的学习、开发和人才交流

52VR开发交流

相关推荐

已有 0 人参与

发表评论

您需要登录才可以回帖 登录 | 立即注册

手机版|VR开发网 ( 津ICP备18009691号 ) 统计 网安备12019202000257

GMT+8, 2020-10-22 12:55 AM

返回顶部