我是一名iphone游戏开发者。现在我正在为儿童开发一个图书应用程序。为此,我需要更改 cclabel 的颜色以逐字更改背景中的文本。使其作为初始过程工作
NSString *pstring1 = @"The moon is a big eye";
int ix = 600,iy = 300;
NSArray *str1 = [pstring1 componentsSeparatedByString:@" "];
NSLog(@"str1 %@",str1);
for(NSString* st in str1)
{
CCLOG(@"STRING IS %@ POSITION IS %d",st,ix);
CGFloat wid= 0;
CGFloat ss = [st sizeWithFont: [UIFont systemFontOfSize:25]].width;
wid = ss+(ss/10);
CCLabelTTF * labels = [CCLabelTTF labelWithString:st fontName:@"Marker Felt" fontSize:25 ];
[labels setPosition:CGPointMake(ix, iy)];
[labels setColor:ccBLUE];
ix+=wid+5;
[self addChild:labels];
例如,我用空格分隔了一个字符串并将其添加到 NSArray。在 for 循环中,我使用 sizeWithFont 逐个获取数组中字符串的文本宽度,并将其添加为 CGFloat 值。我正在为数组中的每个单词创建 cclabel 并根据单词的增加宽度大小保存在 CGFloat 中的数组的宽度。问题是每个 cclabel 之间有更多的空白,或者它相互合并。我不知道我是对还是错输出看起来像这样http://screencast.com/t/p8Rj8GKZ。请帮我解决这个问题。如果这个问题得到解决,意味着我将使用计时器并更改每个 cclabel 的颜色以显示单词到单词的颜色变化效果。