Unity 游戏框架搭建:弃用的代码警告解决

在前两篇,我们把所有的示例重头到尾整理了一遍。
当前的状态如下:
  1. 要做的事情:
  • (完成) 备份:导出文件,并取一个合理的名字。
  1. 遗留问题:
  • (完成) 第八个示例与之前的示例代码重复,功能重复。
  • (完成) 方法所在类的命名有问题。
  • 菜单栏显示顺序问题。
  • 弃用的代码警告
  1. 约定和规则:
  • 每个示例在 QFramework 目录下创建一个文件夹,文件夹的格式是: 数字.示例的功能
  • 每个示例写一个脚本,脚本中包含可复用的静态方法和 MenuItem 方法。
  • 每写一个示例进行一次导出,导出的文件名后边加上日期和时间,这个功能已经在导出功能里内置了。
  • 每次有 API 变更的时候做一次备份,备份的名字采用 QFramework_vX.Y.Z 格式。
  • 每次进行整理的时候要确保是在功能有效的情况下进行删除和变更。
  1. 示例分类:
  2. 知识学习&收集
  • API 收集
  • C# 语法实践
  1. 库本身的功能
  • 规则实现
  • 使用流程提供及优化
  • 效率提升(编码体验、逻辑复用)
  • 项目实用工具收集
我们看下以上遗留问题里,示例重复这个做完了,还差一个菜单栏显示顺序问题,还有一个弃用的代码的警告。
两个看起来,弃用代码的警告马上就有思路了,就只要保证功能正确的情况下重写代码就好了。
我们看下编辑器的弃用代码警告: 目前有 5 个警告,主要集中在示例 7 和把中。我们一项一项解决。
先看示例七的代码:
    
using System . IO ; # if UNITY_EDITOR using UnityEditor ; # endif using UnityEngine ; namespace QFramework { public class CustomShortCut : MonoBehaviour { # if UNITY_EDITOR [ MenuItem ( "QFramework/7.自定义快捷键 %e" ) ] private static void MenuClicked ( ) { var generatePackageName = PreviousFunctions . GenerateUnityPackageName ( ) ; PreviousFunctions . ExportPackage ( "Assets/QFramework" , generatePackageName + ".unitypackage" ) ; PreviousFunctions . OpenInFolder ( Path . Combine ( Application . dataPath , "../" ) ) ; } # endif } }
很容易改。改完之后的代码如下:
    
using System . IO ; # if UNITY_EDITOR using UnityEditor ; # endif using UnityEngine ; namespace QFramework { public class CustomShortCut : MonoBehaviour { # if UNITY_EDITOR [ MenuItem ( "QFramework/7.自定义快捷键 %e" ) ] private static void MenuClicked ( ) { var generatePackageName = Exporter . GenerateUnityPackageName ( ) ; EditorUtil . ExportPackage ( "Assets/QFramework" , generatePackageName + ".unitypackage" ) ; EditorUtil . OpenInFolder ( Path . Combine ( Application . dataPath , "../" ) ) ; } # endif } }
之后编译后的结果如下所示: 还剩两个,我们看下第 8 个示例的代码。
    
.. . public class PreviousFunctions { .. . [ MenuItem ( "QFramework/8.总结之前的方法/3.生成文件名到剪切板" ) ] private static void MenuClicked3 ( ) { CommonUtil . CopyText ( GenerateUnityPackageName ( ) ) ; } [ MenuItem ( "QFramework/8.总结之前的方法/4.导出 UnityPackage" ) ] private static void MenuClicked4 ( ) { EditorUtil . ExportPackage ( "Assets/QFramework" , GenerateUnityPackageName ( ) + ".unitypackage" ) ; } .. . } .. .
主要问题在 GenerateUnityPackageName,这个在整理第个示例的时候忘记了,改成如下代码就好了。
    
.. . public class PreviousFunctions { .. . [ MenuItem ( "QFramework/8.总结之前的方法/3.生成文件名到剪切板" ) ] private static void MenuClicked3 ( ) { CommonUtil . CopyText ( Exporter . GenerateUnityPackageName ( ) ) ; } [ MenuItem ( "QFramework/8.总结之前的方法/4.导出 UnityPackage" ) ] private static void MenuClicked4 ( ) { EditorUtil . ExportPackage ( "Assets/QFramework" , Exporter . GenerateUnityPackageName ( ) + ".unitypackage" ) ; } .. . } .. .
这样编译警告就没有了。
警告的问题全部解决了,弃用的方法就全部可以删掉了,因为弃用的方法,只要被调用了才会报警告,但是在删除弃用方法的时候要小心一点,因为弃用的方法有可能是在某个宏里边调用的,这时候最好用一下 IDE 的全局搜索字符串,一般 IDE 都会有,怎么用,自己用搜索引擎查一下就行了。
今天的内容就这些,拜拜~。
转载请注明地址:凉鞋的笔记: liangxiegame.com

更多内容

  • QQ 交流群: 623597263
  • Unity 进阶小班 :
  • 主要训练内容:
  • 框架搭建训练(第一年)
  • 跟着案例学 Shader(第一年)
  • 副业的孵化(第二年、第三年)
  • 权益、授课形式等具体详情请查看 《小班产品手册》 :https://liangxiegame.com/master/intro
  • 关注公众号:liangxiegame 获取第一时间更新通知及更多的免费内容。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值