Cocos2d 中的Sprite大小調整問題

2022-01-29 02:32:51 字數 912 閱讀 5508

以前用uiimageview,比如  uiimageview *view = [[uiimageviewalloc] initwithimage:[uiimageimagenamed:@"back.jpg"]]; 當uiimageview 大小改變時,內部會自動跟隨imageview進行伸縮變化。比如我用了一張100*200的,我設定view的frame為200*400,view就會自動把拉伸。

但是在cocos2d中,sprite不是這樣的,我採用528*300的,採用以下**

效果如下

當我加入以下**後

background->setcontentsize(ccsize(960,640));
效果變為這樣

其實,變化後,sprite的position是不變的,第2張中,background這個sprite的position還是在螢幕正中間,但是由於sprite沒有自動拉伸內容的功能,由sprite的左下角開始繪製,繪製完全部後,把剩餘的部分填充黑色,所以看起來sprite不居中了。

現在看起來,cocos2d的一定要非常準確才行,因為它不是自適應的(待驗證。。。)

為什麼imageview可以自動放大,sprite不可以呢?這需要以後研究一下!

cocos2d實現語音 Cocos2d 聲音API

param url 聲音路徑 cc.audioengine.playmusic url loop 停止背景 param releasedata 是否釋放聲音資料,預設為false cc.audioengine.stopmusic releasedata 暫停背景 cc.audioengine.pau...

cocos 2d中CCUserDefault的使用

cocos 2d中的ccuserdefault的使用非常簡單,網上有一位大神 已經把這個類全部都注釋了,一目了然。非常感謝!下面介紹下這個類的傻瓜用法 1.在需要使用的類中的引入標頭檔案 include support ccuserdefault.h include stdio.h include ...

cocos2d筆記 cocos2d的單例模式

cocos2d充分使用了單例設計模式,這裡有必要提及它是因為它是經常是討論熱點。大體上說,乙個singleton是乙個類,它在應用使用期中僅僅例項化一次。為了確保如此,就要使用乙個既建立又訪問此物件例項的靜態方法。因此,你不使用alloc init或者靜態自動釋放初始化器 static autore...