2013-03-12 3 views
0

다음 코드는 화면의 오른쪽 상단에 레이블을 배치 할 것으로 기대합니다. 그러나 x 위치가 화면의 오른쪽에 나타나고 수동으로 이동해야합니다. 이 코드의 문제점은 무엇입니까?CCLabelTTF를 정렬하고 배치하십시오.

CGSize winSize = [[CCDirector sharedDirector] winSize]; 

self.screenTop = winSize.height; 
self.screenRight = winSize.width; 
self.screenBottom = 0; 
self.screenLeft = 0; 


self.scoreLabel = [CCLabelTTF labelWithString:@"000000" dimensions:CGSizeMake(200,30) hAlignment:kCCTextAlignmentRight fontName:@"Helvetica" fontSize:24]; 
self.scoreLabel.position = ccp(self.screenRight - 20, self.screenTop - 20); 
[self addChild:self.scoreLabel z:1]; 

위치가 {548, 300} (iPhone5)로 올바르게 기록됩니다. hAlignment:kCCTextAlignmentRight이 올바르게 작동하지 않는 것으로 보입니다. 일반적으로

+0

는'horizontalAlignment'는 경계 상자에있는 텍스트의 정렬입니다. 여러 줄 문자가있는 경우에만 유용합니다. –

답변

0
self.scoreLabel.position = ccp(self.screenRight - 100, self.screenTop - 20); 

더 :

self.scoreLabel.position = ccp(self.screenRight - self.scoreLabel.contenSize.width/2, 
self.screenTop - self.scoreLabel.contenSize.height/2); 
+6

... 또는 anchorPoint 1,1 – LearnCocos2D

+0

true ... 훨씬 더 일반적인 :) – YvesLeBorg

+0

오른쪽 정렬을 설정하면 자동으로 앵커 포인트가 1,1로 설정 될 것으로 예상했지만, 그렇지 않을 것으로 예상됩니다. – soleil

관련 문제