当前位置:   article > 正文

闭包优化Unity_闭包的优化

闭包的优化

最近对闭包有了一定的了解,再加上最近遇到一个问题,发现正好可以运用闭包的思想来优化下,书以记之。

闭包可参考https://blog.csdn.net/qq_39779932/article/details/103050787

问题是这样的:在scrollview中动态加载button cell,然后点击button可以让右边的Text显示button的一些说明。见下图

正常逻辑下,在我加载的button 的预制体中必然需要加上脚本,因为一来要注册button的点击事件,二来要获得button中text的内容,必然需要一个脚本才行。给每个Button加一个脚本也有两种的解法。

1、采用单列模式,让button cell可以访问到足够多信息

2、使用委托进行一定的解耦

3、利用闭包保存外部局部变量的特性进行表达

对比以上三者,第一种是最常见的,第二种有一定的解耦,第三种是既解耦也因为不用再创建button的脚本节省一些内存。创建一个脚本其实还是要占些内存的,因为MonoBehaviour包含了大量的属性,很多时候都用不上,但是一旦创建了MonoBehaviour必然会开辟那么多的内存空间。另Unity官方也正在推行ECS来优化MonoBehaviour。

项目已上传码云,有需要见下链接。项目采用2018.3.1版本unity。

项目链接:https://gitee.com/zfwl/ClosureForOptimization

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/449453
推荐阅读
相关标签
  

闽ICP备14008679号