cocos2d-x 弹出对话框播放视频
2014-05-28 15:20
459 查看
参考 http://www.zaojiahua.com/popscene.html
的cocos2d-x 弹出对话框的实现, 以及 http://www.cnblogs.com/evan-cai/
的用Cocos2d-x和libvlc写一个跨平台播放器, 实现的在弹出的窗口中播放视频,播放结束关闭窗口。
弹出窗口是在Pop类中实现的,头文件 Pop.h 代码如下
Pop.cpp 代码
HelloWorldscene.cpp 中调用函数,生成弹出框层
void HelloWorld::menuCallback(cocos2d::CCObject *pSender){
Pop* pop=Pop::create();
this->addChild(pop);
}
的cocos2d-x 弹出对话框的实现, 以及 http://www.cnblogs.com/evan-cai/
的用Cocos2d-x和libvlc写一个跨平台播放器, 实现的在弹出的窗口中播放视频,播放结束关闭窗口。
弹出窗口是在Pop类中实现的,头文件 Pop.h 代码如下
#ifndef __POP_H__ #define __POP_H__ #include "cocos2d.h" #include "cocos-ext.h" using namespace cocos2d; using namespace cocos2d::extension; using namespace std; class Pop:public CCLayer { public: Pop(void); ~Pop(void); virtual bool init(); static cocos2d::CCScene* scene(); CREATE_FUNC(Pop); virtual void registerWithTouchDispatcher(void); void closeButton(CCObject * object); virtual bool ccTouchBegan(CCTouch* touch, CCEvent* event); private: CCSize m_size; }; #endif
Pop.cpp 代码
#include "Pop.h" #include "cocos-ext.h" #include "movieplayer.h" using namespace cocos2d; Pop::Pop(void) { } Pop::~Pop() { } CCScene* Pop::scene() { CCScene* scene=CCScene::create(); Pop *layer = Pop::create(); scene->addChild(layer); return scene; } bool Pop::init() { CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize(); CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin(); m_size=visibleSize/2; //// if ( !CCLayer::init() ) { return false; }
MoviePlayer* pPlayer = MoviePlayer::instance(); pPlayer->setAnchorPoint(ccp(0,0)); pPlayer->setContentSize(m_size); pPlayer->setPosition(ccp(400,200)); this->addChild(pPlayer); pPlayer->play("dizhen.flv"); CCMenuItemImage * item= CCMenuItemImage::create("CloseNormal.png", "CloseSelected.png", this,menu_selector(Pop::closeButton)); item->setPosition(ccp(origin.x+pPlayer->getContentSize().width-item->getContentSize().width/2,origin.y+item->getContentSize().height/2)); CCMenu *menu=CCMenu::create(item,NULL); menu->setTouchPriority(-229); menu->setPosition(CCPointZero); pPlayer->addChild(menu); return true; } void Pop::registerWithTouchDispatcher() { CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, -128, true); } void Pop::closeButton(CCObject * object) { MoviePlayer* pPlayer = MoviePlayer::instance(); pPlayer->stop(); this->removeFromParentAndCleanup(true); } bool Pop::ccTouchBegan(cocos2d::CCTouch *pTouch, cocos2d::CCEvent *pEvent) { return true; }
HelloWorldscene.cpp 中调用函数,生成弹出框层
void HelloWorld::menuCallback(cocos2d::CCObject *pSender){
Pop* pop=Pop::create();
this->addChild(pop);
}
相关文章推荐
- 安卓开发:弹出自定义对话框自动播放视频(仿视频广告效果,使用mediaplayer和surfaceview做播放器)
- qt弹出对话框选择视频并播放
- 使用cocos2d-x + ffmpeg播放视频
- ios平台cocos2d-x播放音频、视频、音效的Demo(支持网络视频)
- 右下角弹出窗口视频播放广告JS代码
- cocos2d-x 3.0 播放MP4视频
- opencv2在MFC对话框控件中显示图片播放视频
- 弹出窗播放视频(多个视频文件)
- cocos2d-x 播放视频 on Android
- cocos2d-x 3.0 播放MP4视频
- Cocos2d-x 弹出对话框的设计与实现
- DirectX 在对话框播放视频
- Cocos2d-3.2 VideoPlayer 视频播放梳理01
- android 闹钟提醒并且在锁屏下弹出Dialog对话框并播放铃声和震动
- cocos2d-x IOS 和Android播放视频(包括网络视频)
- cocos2d-x 弹出对话框的设计与实现
- cocos2d-x 弹出对话框
- opencv [c++版] 学习笔记(2) 在MFC基于对话框界面上播放视频
- VS2010MFC对话框程序中使用Windows Media Player播放音频或视频文件
- cocos2d-x 3.0 播放MP4视频