Cocos2d-x实现android的Toast效果
感觉android中的toast效果挺不错的,就试着自己用2dx做了一下,挺简单的,效果也不错。
XYToast.h
#pragma once#include "cocos2d.h"#include "cocos-ext.h"USING_NS_CC;USING_NS_CC_EXT;using namespace std;class XYToast: public CCLayerColor{public: CCSize visibleSize; CCPoint origin; CCScale9Sprite* bg;public: XYToast(); ~XYToast(); void removeSelf(); virtual bool init(); void initToast(string msg,float time); CREATE_FUNC(XYToast); void onExit();};
XYToast.cpp
#include "XYToast.h"XYToast::XYToast(){}XYToast::~XYToast(){}bool XYToast::init(){ bool bRet = false; do { CC_BREAK_IF(!CCLayerColor::initWithColor(ccc4(0, 0, 0, 0)));//ccc4(0, 0, 0, 125) visibleSize = CCDirector::sharedDirector()->getVisibleSize(); origin = CCDirector::sharedDirector()->getVisibleOrigin(); //==================================== bg = CCScale9Sprite::create("toast_bg.png"); bg->setPosition(ccp(origin.x+visibleSize.width/2,origin.y+130*visibleSize.height/960)); //============================ bRet = true; } while (0); return bRet;}void XYToast::onExit(){ CCLayerColor::onExit();}void XYToast::initToast( string msg,float time ){ CCLabelTTF* pLabel = CCLabelTTF::create(msg.c_str(), "Arial", 21); pLabel->setColor(ccWHITE); bg->setContentSize(CCSizeMake(pLabel->getContentSize().width+10,pLabel->getContentSize().height+10)); bg->addChild(pLabel, 1); this->addChild(bg,10); pLabel->setPosition(ccp(bg->getContentSize().width/2,bg->getContentSize().height/2)); pLabel->runAction(CCSequence::create(CCFadeIn::create(time/5), CCDelayTime::create(time/5*3),CCFadeOut::create(time/5),NULL)); bg->runAction(CCSequence::create(CCFadeIn::create(time/5), CCDelayTime::create(time/5*3),CCFadeOut::create(time/5), CCCallFunc::create(this,callfunc_selector(XYToast::removeSelf)),NULL)); //========================= //this->scheduleOnce(schedule_selector(XYToast::removeSelf),time);}void XYToast::removeSelf(){ this->removeFromParentAndCleanup(true);}
调用方法
XYToast* toast = XYToast::create(); toast->initToast(Tools::a2u("登录成功").c_str(),2.5f); this->addChild(toast,10);
背景图
<喎
报名学习加微信/QQ 1602007,关注《东方联盟网》微信公众号
>更多相关文章
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 03-08消息称微软开发内部AI推理模型,或将成为Op
- 03-08美国法院驳回马斯克请求,未阻止OpenAI转型
- 03-08饿了么成立即时配送算法专家委员会 持续全局
- 03-08长安汽车:预计今年底长安飞行汽车将完成试
- 03-08谷歌推出虚拟试穿、AR美妆新功能
相关文章
24小时热门资讯
热门推荐
最新资讯
操作系统
黑客防御