图中当trigger属性改变时,change函数会被调用。问题是怎样在change函数中通过修改TestEnum,使得编辑器中与TestEnum对应的枚举列表或内容发生改变?
目前类似图中change函数的实现是做不到的。
你好这部分的 API 还不是很稳定,你可以悄悄使用
cc.Class.attr(component, 'style', {
type: 'Enum',
enumList: cc.Enum.getList(cc.Enum(obj))
});
谢谢@jare, 可是将change函数改为上图实现后,编辑器中修改trigger属性值后,style列表还是只有3项哦。 对cc.Class.attr的使用有问题?
重新选中该节点看看,可能是属性编辑器没刷新
重新选中节点后,编辑器枚举列表里面的内容改变了。这个方案还不是那么完美,我看之前的一个帖子http://forum.cocos.com/t/cc-enum/38140/2里面提到7月底inspector插件就出来了,到那个时候是不是可以使用inspector插件自动更新枚举列表的内容,而不用再重新选中节点手动刷新编辑器?
枚举部分可能会来不及
谢谢@jare。 顺便在这儿问下另外一个问题,就是1.1.1控制台的搜索功能好像是用不了,输入搜索关键字后,按enter,控制台下面不会出现搜索结果,还有就是在控制台的搜索框里输入关键字的时候,在输入字母e的同时,编辑器会切换当前节点的选中模式到“选转工具”,这个是?
抱歉挖坟。
使用
cc.Class.attr(component, ‘style’, {
type: ‘Enum’,
enumList: cc.Enum.getList(cc.Enum(obj))
});
这样写后还是没有刷新属性检查器,需要重新选中该节点才会变化。请问有没有api通知去刷新属性检查器?
https://forum.cocos.com/t/topic/41996
https://forum.cocos.com/t/topic/41507
抱歉挖坟。我想问一下这个现在有新的解决方案吗?
如果是这种自定义类型的,貌似改了不生效