2012-04-16 20 views

答えて

9

シンプル、ちょうど高さと幅を取ると、ここ2

CGSize winSize = [[CCDirector sharedDirector] winSize]; 
CGPoint point = ccp(winSize.width/2, winSize.height/2); 

で割り、それを行うにはやや高度な方法です。 これはまた、あなたがスプライトの親にsetPositionと呼ばれる(=この例では自己)

CGSize winSize = [[CCDirector sharedDirector] winSize]; 
CCSprite* centerSprite = [CCSprite spriteWithFile:@"sprite"]; 
CGPoint centerPoint = ccpSub(ccp(winSize.width/2, winSize.height/2), [self position]); 
[centerSprite setPosition:centerPoint]; 
[self addChild: centerSprite]; 
+0

です。これは画面の中心を与えません。画面サイズの半分になります。 – Jay

+7

そして、画面サイズの半分は画面の中心です。 – s1m0n

+0

(0、0)は、画面の左下隅ではなく、親を基準にしています。親が移動した場合は機能しません。 – Jay

0

している場合、あなたは関係なく、あなたが使用しているフレームワークの画面の正確な中心を取得することはできませんココスの仕事やしません、また、ココスは、画面全体、このような何かを行うことで(あなたが広告のための部屋を作るためにココスをトリミングこのような場合は時々ある)を使用するように設定されていない場合でも:ココス

int width=[[UIScreen mainScreen] bounds].size.width 
int height=[[UIScreen mainScreen] bounds].size.height 
CGPoint center=ccp(width/2,height/2); 

ccpマクロ作品をのみ;そうでない場合は、CGPointMake

関連する問題