微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

cocos2dx lua UI栈

1.UI栈的由来
由于写cocos2dx时很多时候你不想按安卓返回键退出。这时候你需要做的是模拟安卓原生方式

模拟安卓Activity的操作
1.让所有UI界面继承UIObject基类。
2.在UIObject基类中实现安卓返回键触发。

--[[
@brief此处定义一些对UI进行操作的公共函数
@by李俊
]]

wolf=wolf or{}
localUIUtils={}

UIUtils._uistack={}
-------------------------------------------
--将一个对话框加入栈中
--@paramuiobject对话框
-------------------------------------------
functionUIUtils.pushUI(uiobject)
ifuiobject.isDialog then
UIUtils._uistack[#UIUtils._uistack+ 1]=uiobject
end
-------------------------------------------
--将栈顶对话框弹出栈中,并删除。若栈顶无元素返回nil
--returnuiobject
-------------------------------------------
functionUIUtils.popUI()
localuiobject=UIUtils._uistack[#UIUtils._uistack]
UIUtils._uistack[#UIUtils._uistack]= nil
returnuiobject
end

-------------------------------------------
--将栈顶获取栈顶元素,不移除,若栈顶无元素返回nil
--returnuiobject
-------------------------------------------
functionUIUtils.topUI()
localuiobject=UIUtils._uistack[#UIUtils._uistack]
functionUIUtils.initUIStack()
UIUtils._uistack={}
functionUIUtils.countUISatck()
return#UIUtils._uistack
end wolf.UIUtils=UIUtils

原文地址:https://www.jb51.cc/cocos2dx/339937.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐