0

这是我对 Stack Overflow 的第一个问题。我已经使用这个网站一段时间了,并且已经使用它的资源来找出我的编程问题的答案,但我担心这次我找不到我正在寻找的答案。

我创建了这五个字符串:

//List five items from the book and turn them into strings

//1 Josh the Trucker
NSString *stringJosh = @"Josh the Trucker";

//2 The Witch from the Remote Town
NSString *stringWitch = @"The Witch from the Remote Town";

//3 Accepting the curse rules "Willingly and Knowingly"
NSString *stringRules = @"Accepting the curse rules, --Willingly and Knowingly--";

//4 Josh's time left to live--Five Days Alive Permitted
NSString *stringFiveDays = @"Josh's time left to live--Five Days Alive Permitted";

//5 The Fire Demon Elelmental    
NSString *stringDemon = @"The Fire Demon Elelmental";

然后,我把它们放在一个数组中:

//Create an array of five items from the book
      NSArray *itemsArray = [[NSArray alloc] initWithObjects:
                            stringJosh,
                            stringWitch,
                            stringRules,
                            stringFiveDays,
                            stringDemon,
                            nil];

然后,我创建了这个可变字符串,我需要在其中循环遍历数组并将项目附加到 UIlabel。

 NSMutableString *itemsString = [[NSMutableString alloc] initWithString:
                                  @"itemsArray"];

这是循环,它显示控制台日志中的项目。

for (int i=0; i<5; i++)
{
    NSLog(@"Book Item %d=%@", i, itemsArray[i]);

}

我的问题是,如何将这些项目附加到 UIlabel 中?这些功能在我的 appledelegate 中。

在我的 viewDidAppear 函数(flipsideViewController)中,我有:

label8.text =""----thats where the looped info needs to go.

我该怎么做呢?我觉得我需要将它们放在一起并附加 NSLog 应该在的位置......但是我如何将该信息传输到文本标签?

我希望我自己解释。

我们还没有完成任何附加示例,我想这是我需要从“狂野”那里得到答案的地方

这是我所知道的最狂野的编码环境,所以我希望我能在这里找到一些方向。

谢谢参观!

4

3 回答 3

4

一旦你有你想要在 NSArray 中连接的所有字符串,你可以将它们与单个调用结合起来(使用你想要的任何分隔符):

NSString *combinedString = [itemsArray componentsJoinedByString:@" "];

如果您需要更复杂的逻辑,您可以使用 NSMutableString 在迭代数组时创建所需的结果,即:

NSMutableString *combinedString = [NSMutableString string];
[itemsArray enumerateObjectsUsingBlock:^(NSString *obj, NSUInteger idx, BOOL *stop) {
       [combinedString appendFormat:@"Book Item %d=%@ ", idx, obj];
    }];

另请注意,最好使用快速枚举或块枚举来遍历集合,而不是使用基于索引的普通 for 循环。

于 2013-08-14T10:20:39.340 回答
1
NSMutableString *labelText = [NSMutableString string];
int i = 0;
for (NSString *item in itemsArray)
    [labelText appendFormat:@"Book Item %d=%@\n", i++, item];

label8.text = labelText;
于 2013-08-14T10:22:20.437 回答
-1

做这个

UILabel *主标签;mainlabel.text = [origText stringByAppendingString:get];

将您的文本添加到 mainlabel.. orig 文本是可变字符串,否则在 forloop 中只需将索引文本处的数组对象附加到 label.put 上面的 forloop 代码行

于 2013-08-14T10:21:01.773 回答