2014-10-08 2 views
0

나는 플레이어가 아이템을 구입할 수있는 게임 샵을 운영하고 있습니다. 상품의 가격을 출력하는 CCLabelTTF과 그 옆에 바로 CCSprite이 있는데 동전의 이미지 (통화)입니다. 사용자가 더 많은 항목을 얻으면 항목의 가격이 변경되므로 레이블 텍스트는 레이블 바로 옆에있는 CCSprite 코인과 겹쳐지기 시작합니다. 나는 동전 CCSprite가 레이블 위치에 따라 위치하도록 동전을 만들려고합니다. CCLabelTTF에 자식으로 CCSprite를 추가하는 것보다 더 좋은 방법이 있습니까? CCLabelTTFCCSprite을 포함하는 등?CCSprite를 CCLabelTTF에 "결합"

는 지금은이 있습니다

coinIcon = [CCSprite spriteWithImageNamed:@"coin.png"]; 
[coinIcon setScale:0.3]; 
priceLabel.string = [NSString stringWithFormat:@"%.Lf", price]; 
[priceLabel addChild:coinIcon]; 

나는 또한 setPositionInPoints하려고하지,하지만 난 위치 coin를 설정할 때마다 더 이상 화면에 나타났다. 이것은 내가이 방법을 사용하면서 겪어 온 주된 문제이다. 위치를 설정하지 않아도 제대로 작동하지만 동전이 priceLabel의 왼쪽에 있어야합니다. 위치를 설정하고 앱을 실행하려고하면 화면에 표시되지 않습니다. 어떤 아이디어?

답변

0

사용과 같이 컨테이너로 CCNode :

// CCSprite and CCLabelTTF are by default anchored (.5,.5) 
// so make label same height as coin and it will line dead-center 
// to the coin's vertical apex 

float offsetInPoints = 8.f; 
float labelWidthInPoints = 80.f; 
CCNode* priceNode = [CCNode node]; 
coinIcon = [CCSprite spriteWithImageNamed:@"coin.png"]; 
[coinIcon setScale:0.3]; 
priceLabel.string = [NSString stringWithFormat:@"%.Lf", price]; 
priceLabel.horizontalAlignment=CCTextAlignmentLeft; 
priceLabel.dimensions=CGSizeMake(labelWidthInPoints,coinIcon.contentSizeInPoints.height); 
[priceNode addChild:coinIcon]; 
[priceNode addChild:priceLabel]; 
priceLabel.positionInPoints = ccpAdd(coinIcon.positionInPoints, 
    ccp(coinIcon.contentSizeInPoints.width+offsetInPoints,coinIcon.position.y)); 

가격으로 끝나는 어떤 동전의 오른쪽에 일정한 offsetInPoints에서 가격 라벨을 배치합니다.

정렬 CCLabelTTF 팁에 동일한 높이 메모리

+0

고마워요 @YvesLeBorg에서 코딩 테스트하지 –