找回密码
 立即注册
查看: 248|回复: 0

2022-01-04 解决Unable to find style 'AnimationCurveEditorBackground' in skin 'Dark

[复制链接]
发表于 2022-1-5 10:24 | 显示全部楼层 |阅读模式

  • 问题描述

    最近在项目中被要求解决一个Unable to find style 'AnimationCurveEditorBackground' in skin 'DarkSkin' Layout的警告,于是我双击警告到代码位置,发现是调用一个叫Cinema Suite的插件的接口,但是这个插件已经许久没有更新,项目用的还是1.4的版本,更离谱的是这个调用的接口是写在dll里面的,叫DirectorEditor.dll,ILCode里面有个地方是这么写的:
  IL code   private void drawBackground()   {     GUI.Box(this.trackBodyBackground, GUIContent.none, (GUIStyle) "AnimationCurveEditorBackground");     this.rect = this.trackBodyBackgroundNoVerticalScrollbar;     this.BeginViewGUI(false);     this.SetTickMarkerRanges();     this.DrawMajorTicks(this.trackBodyBackground, (float) this.frameRate);     this.EndViewGUI();   }
警告信息为:
Unable to find style 'AnimationCurveEditorBackground' in skin 'DarkSkin' Layout
<hr>

  • 问题解决

    于是我百度查了一番,均没有什么好的解决办法,我甚至把插件升级到最新的1.6版,结果还是木大,升级后不仅有报错,原来的功能也不能正常使用了。
    但是在查找的过程中,我发现了:

1)这个同学将‘AS TextArea’中的AS去掉,就可以解决警告


2)我想到能不能将AnimationCurveEditorBackground这个GUIStyle换成别的,就能解决这个警告问题,然后去搜索了怎么去修改dll,用微软提供的Ilasm.exe(IL 汇编程序)和Ildasm.exe(IL 反汇编程序)
Download:/releases[ latest ]
然后用微软文档来修改dll,先把dll反编译变成可编辑的il文件,再编译回去。
有些同学应该可以在C盘找到的这两个工具,但是我没找到其中一个,下载后却发现两个版本可能对不上,所以去自己找的汇编程序。
在修改il文件时将AnimationCurveEditorBackground更换为PopupCurveEditorBackground,问题解决。
我猜是在一次unity更新后将内置的GUIstyle也做了更新,有些老版本的换了名字。

这个问题在下一篇文章中得到验证查看Unity所有的默认UI效果 GUIStyle

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-23 00:32 , Processed in 0.090399 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表