我正在做一个RSVP阅读项目应用程序,它在屏幕上闪烁字样。您可以将单词块大小(您希望一次显示多少个单词)设置为1,2或3.我通过将我的段落放在一个字符串中并使其完成,从而使其工作为1个单词:
[self.textInput componentsSeparatedByString:@" ";
这使我成为一组单词,我可以用它一次闪烁一个单词。如何一次显示2个单词,我怎么能这样做?有没有办法我可以再次使用这个函数来做不同的事情,或者我应该迭代这个字数组并用2个字符串创建一个新的字符串?
我们将非常感谢任何帮助或建议,以达到最佳实践。感谢。
答案 0 :(得分:1)
NSArray *allwordsArray = [self.textInput componentsSeparatedByString:@" "];
现在您获得了所需的所有信息。意思是你得到了包含每个单词的数组。现在只需将它组合在一起。 (我还没有测试过这段代码)
NSMutableArray *twoWordArray = [[NSMutableArray alloc] init];
int counter=0;
for (int i=0; i<[allwordsArray count]; i++)
{
if (counter >= [allwordsArray count]) break;
NSString *str1 = [NSString stringwithformat@"%@", [allwordsArray objectAtIndex:counter]];
counter++;
if (counter >= [allwordsArray count]) break;
NSString *str2 = [NSString stringwithformat@"%@", [allwordsArray objectAtIndex:counter]];
NSString *combinedStr = [NSString stringwithformat@"%@ %@", str1,str2];
[twoWordArray addObject: combinedStr];
counter++;
}
答案 1 :(得分:0)
您已将字符串分解为组件,这些组件位于正确的轨道上。然后,您可以创建一个只包含组件的较小数组,直到达到块大小。最后一步是重新加入字符串。
NSArray *components = [self.textInput componentsSeparatedByString:@" "];
NSRange chunkRange = NSMakeRange(0, chunkSize);
NSArray *lessComponents = [components subarrayWithRange:chunkRange];
NSString *newString = [lessComponents componentsJoinedByString:@" "];