做为一个java出身的程序媛,长时间做Lua,重复一些工作后,特别想用继承。其实很简单。因为我有一大部分的场景,背景长的都一样,所以打算做一个父类。

需要注意的是,如果子类有和父类的同名函数,就会被覆盖,除非手动的调用.super.方法。

关键的代码就两个地方,都在子类中。

1 创建场景时:

local SceneBase = import("app.scenes.SceneBase")
local ActivityScene = class("ActivityScene", SceneBase)

2 子类的构造函数中,需调用父类

ActivityScene.super.ctor(self) -- 这是关键

超级简单,为什么以前没人用呢,用了多省事啊,便于维护,省了很多人力呢。下面是两个文件的完整代码。

父类:

local commImgPath = "#images/common/ui/"

local SceneBase = class("SceneBase", function()
return display.newScene("SceneBase")
end) function SceneBase:ctor()
print("SceneBase:ctor")
self:addSprite()
end function SceneBase:addSprite()
print("SceneBase:addSprite")
self.menuBgHeight = ZySize.scale *
self.menuBgWidth = display.width - ZySize.scalew *
--背景
cc.ui.UIImage.new(commImgPath.."beijing.jpg")
:setLayoutSize(display.width + ZySize.scalew*, display.height + ZySize.scale*)
:align(display.CENTER, display.cx, display.cy)
:addTo(self) cc.ui.UIImage.new(commImgPath.."tongyongmianban3.png", {scale9 = true})
:setLayoutSize(display.width - ZySize.scalew* , display.size.height - self.menuBgHeight - ZySize.scale * )
:pos(ZySize.scalew * , self.menuBgHeight + ZySize.scale * )
:addTo(self) cc.ui.UIImage.new(commImgPath.."diban2.np.png", {scale9 = true})
:setLayoutSize(display.width, self.menuBgHeight)
:addTo(self)
end return SceneBase

子类:

local SceneBase = import("app.scenes.SceneBase")
local ActivityScene = class("ActivityScene", SceneBase) function ActivityScene:ctor()
ActivityScene.super.ctor(self) -- 这是关键
end return ActivityScene

最新文章

  1. 正确获取访问者ip
  2. maven命令参考简要
  3. web.xml
  4. angularjs定义全局变量
  5. 编译原理(简单自动词法分析器LEX)
  6. PHP 生成图片缩略图函数
  7. jquery事件合集
  8. Gradle用户指南
  9. poj3295解题报告(构造、算术表达式运算)
  10. Java前辈:学习J2EE流程中的经验和教训
  11. 转:java.io.IOException: Exceeeded maximum number of redirects: 5 解决版本
  12. C++ STL学习之容器set和multiset (补充材料)
  13. 《安卓网络编程》之第六篇 Android中的WIFI和蓝牙
  14. 10.1 ES6 的新增特性以及简单语法
  15. PHP常用算法和数据结构示例
  16. day6 ConfigParser模块 yaml模块
  17. C# xml可序列化多值枚举脚本
  18. Echart的基础开发模板
  19. JavaScript编码encode和decode escape和unescape
  20. SSH注解方式与XML配置方式对照表

热门文章

  1. 个人github blog环境设置
  2. PHPcms企业黄页中,会员注册之后提示经营模式不得少于1个字符 的解决办法
  3. BZOJ 1040 骑士(环套树DP)
  4. nopi导出
  5. main方法为什么是静态的
  6. paramiko连接远程主机,上传下载文件
  7. [洛谷P5173]传球
  8. Html CSS学习(五)position定位 原
  9. BZOJ1085:[SCOI2005]骑士精神——题解+IDA*粗略讲解
  10. js空对象判断 isPlainObject