cocos2dx创建精灵的五种方法(包括使用图片名获取图片)

还是闲来无事,白白继续给大家分享经验,文笔不好还请见谅!

废话少说,直接上代码:

	// 创建精灵的五种方法
	//方法一:直接创建精灵
        //适合于要显示的是这张图片的全部区域,
	CCSprite * sprite = CCSprite::create("Icon.png");
        //上面那句话也可以根据需要这样来写:
	//CCString* fileName = CCString::createWithFormat("Icon_%d.jpg", flag);
	//CCSprite* sprite = CCSprite::create(fileName->getCString());
	sprite->setPosition(ccp(100, 100));
	this->addChild(sprite);
	// 方法二:参数 图片名称 矩形区域
	//适合于需要显示此图片的部分区域
	CCSprite * sprite = CCSprite::create("Icon.png",CCRectMake(0, 0, 30, 30));
	sprite->setPosition(ccp(100, 100));
	this->addChild(sprite);
	//方法三: 利用帧缓存中的一帧的名称声称一个对象
	// 适合于plist打包好的文件
	CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("test_icon.plist");
	CCSprite * sprite = CCSprite::createWithSpriteFrameName("Icon.png");
	sprite->setPosition(ccp(100, 100));
	this->addChild(sprite);
	//方法四: 利用另外一帧生成一个精灵对象  
	//适合于做帧动画使用
	CCSpriteFrame * frame = CCSpriteFrame::create("Icon.png", CCRectMake(0, 0, 40, 30));
	CCSprite * sprite = CCSprite::createWithSpriteFrame(frame);
	sprite->setPosition(ccp(310, 150));
	addChild(sprite);
	//方法五:利用纹理,
	//适合于需要频繁使用的图片
	CCSpriteBatchNode* spriteTexture = CCSpriteBatchNode::create("iocn.png");
	spriteTexture->setPosition(CCPointZero);
	addChild(spriteTexture);
	CCSprite* sprite = CCSprite::createWithTexture(spriteTexture->getTexture());
	sprite->setPosition(ccp(visiblesize.width/2, 100));
	spriteTexture->addChild(sprite, 2);


ok,欢迎大家拍砖


你可能感兴趣的:(创建,cocos2dx,精灵)