Cocos2D实现上下滚动式状态窗口
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)
有时候要显示的内容太多,我们无法在iOS设备的小屏幕上显示出来,这时候我们可以将内容划分为多个子窗口,依次显示对应的窗口.
在SpritBuilder中新建一个类型为Node的CCB文件,调整样式如下:
我这里划分了2个子窗口,用中间的箭头分割.
注意下面的子窗口中的内容是动态获取的,所以这里留空,但是要保留一个引用的名称.
回到Xcode中,进入对应的类,添加如下方法:
-(void)expandView{
    CCLOG(@"%@ pressed!!!",NSStringFromSelector(_cmd));
    CCActionMoveTo *move;
    CCActionRotateTo *rotate;
    CCAction *fade;
    if (!_isExpanded) {
        _isExpanded = YES;
        //_upperNode.visible = NO;
        fade = [CCActionFadeOut actionWithDuration:1.f];
        move = [CCActionMoveTo actionWithDuration:1 position:ccp(0, 0)];
        rotate = [CCActionRotateTo actionWithDuration:1 angle:180];
    }else{
        _isExpanded = NO;
        //_upperNode.visible = YES;
        fade = [CCActionFadeIn actionWithDuration:1.f];
        move = [CCActionMoveTo actionWithDuration:1 position:ccp(0, -1)];
        rotate = [CCActionRotateTo actionWithDuration:1 angle:0];
    }
    [self runAction:move];
    [_expandArrow runAction:rotate];
    [_upperNode runAction:fade];
}该方法的主要功能是在点击按钮时下滑或上滑子窗口,应用一些动画效果,同时改变按钮箭头的方向.
以下是实际效果:
Cocos2D实现上下滚动式状态窗口的更多相关文章
- Cocos2D实现上下滚动式状态窗体
		大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 假设认为写的不好请多提意见,假设认为不错请多多支持点赞.谢谢! hopy ;) 有时候要显示的内容太多,我们无法在iOS设备的小屏幕上显示出来 ... 
- Cocos2D中的Framerate状态
		对于额外绘制调试物理引擎的支持,Cocos2D同样可以绘制概述计数器,尤其是帧速率(framerate)显示. 为了启用这些概述计数器标签,你只需添加如下一行代码,比如说在AppDelegate.m里 ... 
- Windows窗口消息大全(转)
		Windows窗口消息大全,全不全自己看 ////////////////////////////////////////////////////////////////////////// #inc ... 
- QT 5 初学1 多窗口切分-续
		转载:omydocument 主窗口本身就带着菜单,工具栏,和状态栏,作为一个基本应用,这些都不用操心. 一个工具,需要把窗口切分成三部分,左边,右上,右下.左边显示选择的功能,右上是主窗口.右下作为 ... 
- Windows窗口消息大全
		////////////////////////////////////////////////////////////////////////// #include "AFXPRIV.H& ... 
- C# 在Winform设计一个耗时较久的任务在后台执行时的状态提示窗口
		很多时候,我们需要在窗体中执行一些耗时比较久的任务.比如:循环处理某些文件,发送某些消息等... 单纯的依靠状态栏,用户体验不佳,按下功能按钮后得不到有效的提醒,小白用户绝对会电话给你说“我点了以后就 ... 
- Flink 容错机制与状态
		简介 Apache Flink提供了一种容错机制,可以持续恢复数据流应用程序的状态. 该机制确保即使出现故障,经过恢复,程序的状态也会回到以前的状态. Flink 主持 at least once 语 ... 
- javascript小技巧(非常全)
		事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcE ... 
- TI Zigbee Light Link 参考设计
		TI Zigbee Light Link 参考设计 原文出处: http://processors.wiki.ti.com/index.php/Category:ZigBee_Light_Link ... 
随机推荐
- bzoj3294[Cqoi2011]放棋子 dp+组合+容斥
			3294: [Cqoi2011]放棋子 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 755 Solved: 294[Submit][Status] ... 
- LCD接口和RGB介绍【转】
			转自:https://www.cnblogs.com/hzl6255/p/5470583.html 阅读目录 1. 介绍 2. 接口类型 3. RGB 4. YUV 5. FOURCC 回到顶部 1. ... 
- C++是跨平台的语言
			最开始学习Java时,老师就说Java是跨平台的,而c++不是,这里要纠正一下观点,c++也是跨平台的,只不过是实现跨平台的方式不同而已. 1.平台 一般我们把CPU处理器与操作系统的整体叫平台.不同 ... 
- Python中模块之hashlib&hmac的讲解
			hashlib & hmac的讲解 两个模块主要用于加密相关的操作. 1. hashlib模块 md5 具体代码如下 import hashlib ha_m5 = hashlib.md5()# ... 
- Delphi下DLL编程知识(转)
			一. DLL和系统变量 在 System 单元声明的变量中,有几个对DLL编程有特殊影响.IsLibrary 可以检测代码是执行在应用程序中还是执行在DLL中,在应用程序中 IsLibrar ... 
- Java 读取 json文件
			public ResponseBean getAreas() { String path = getClass().getClassLoader().getResource("area.js ... 
- eclipse maven could not resolve archetype之类的错误
			先说下网上有种联网导入的方法 而我的是本地导入的方法 就是导入原型特慢 或者 原型下载都下载不了的问题 解决方法只能 把那个文件下载搞到本地 没有被墙 就是速度慢 http://repo1.maven ... 
- return、break和continue
			return.break和continue 这三个关键字有一个共同点,那就是读能让后面的语句不执行,不同的地方就是挑的距离不一样. return很强大,如果一个函数中有一个return,并且执行了,那 ... 
- http协议无状态中的 "状态" 到底指的是什么?!
			引子: 最近在好好了解http,发现对介绍http的第一句话[http协议是无状态的,无连接的]就无法理解了:无状态的[状态]到底指的是什么?! 找了很多资料不仅没有发现有一针见血正面回答这个问题的, ... 
- 如何改变hr颜色
			html中用css改变颜色,<hr style="border:0;background-color:#ff0000;height:1px;">如果不加border:0 ... 
