2014-02-23 31 views
0

我试图显示文本标签中的数组内的所有字符串项目。然而如何分配标签文本属性以显示数组中的字符串?

self.latestTenThrows.text = [NSString stringWithFormat:@"%@", self.savedThrowsArray]; 

这个视图中的输出是:

(
    "4 + 4 + 3 + 2 + 1 = 14", 
    "6 + 5 + 4 + 5 + 2 = 22", 
    "2 + 3 + 5 + 1 + 6 = 17" 
) 

我应该怎么做才能让它看起来像这样:

4 + 4 + 3 + 2 + 1 = 14 
6 + 5 + 4 + 5 + 2 = 22 
2 + 3 + 5 + 1 + 6 = 17 

回答

3

Apple documentation for NSArray有可以使用来连接所有插入的数组元素的方法串:

NSString *s = [self.savedThrowsArray componentsJoinedByString: @"\n"]; 
self.latestTenThrows.text = s; 
1

什么,当你登录你所看到的整个数组一次是数组的格式化描述。如果你想在自己的格式化阵列的内容,提取每个对象和记录它,就像这样:

for (NSString *line in self.savedThrowsArray) { 
    NSLog(@"%@", line); 
} 

您可以更改@"%@"匹配任何你想要的输出格式,如包括前导或尾随空格,或附加内容。

如果你想复合所有的结果成一个字符串,可以做这样的:

NSMutableString *mStr = [[NSMutableString alloc] init]; 
for (NSString *line in self.savedThrowsArray) { 
    [mStr appendFormat:@"%@\n", line]; 
} 
self.latestTenThrows.text = mStr; 
+0

你忘了/ N在最后。但这是答案。在for循环之前构建一个字符串。在for循环之后,将字符串设置为textview。而已。 – Logi24

+0

啊我看到了,你正在将结果字符串分配给一个控件。我用一种逐行构建字符串的方式更新了我的答案。 – bneely

+0

是的,从我的角度来看,这是完美的。 – Logi24

0

有一个NSArray方法componentsJoinedByString

假设你的阵列中的每个元素是一个像字符串你可以使用这样的代码:

NSString *combinedString = [componentsJoinedByString: @"\n"]; 
self.latestTenThrows.text = combinedString; 
相关问题