我有一个简单的Web服务,将一些数据传递到表视图中,并且工作正常。
这是我目前的代码:
[[cell detailTextLabel] setText:[item objectForKey:@"Ball 1"]];
正如我所说,这完美无缺,并以球号显示,例如: “1”,取自网络服务。
我想要做的是让它显示,例如“1& 3”。
查看其他一些代码我认为可能是:
[[cell detailTextLabel] setText:[item objectForKey:@"Ball 1"]item objectForKey:@"Ball 2"]];
我是Objective-C的新手,我正在做一些教程,我正在努力扩展它们。搜索某些内容的答案有点困难,因为我不确定术语。
答案 0 :(得分:2)
使用字符串连接,例如stringWithFormat
:
NSString *concated = [NSString stringWithFormat:@"%@ & %@", [item objectForKey:@"Ball 1"], [item objectForKey:@"Ball 3"]];
现在将此字符串设置为label:
[[cell detailTextLabel] setText:concated];
答案 1 :(得分:1)
我不确定您是否要设置项目中字符串的文字,或者只是想打印“1& 3”
让我们假装它是第一个。您可以按
设置文字cell.detailTextLabel.text = [[NSString stringWithFormat:@"%@ %@", [item objectForKey:@"Ball 1"], [item objectForKey:@"Ball 3"]];
NSString stringWithFormat:将构造一个字符串并将%@替换为您提供的NSObject,因为如果你放一个int或一个浮点数就会崩溃。您需要使用正确的标识符来正确写入,%d表示int,%f表示浮动,例如。
如果您只是想在文本中写入“1& 3”,那就是这个。
cell.detailTextLabel.text = @"1 & 3";
答案 2 :(得分:1)
您的单元格的text
属性需要使用一个字符串设置,但您有两个要使用的字符串。你需要结合这些字符串。
Cocoa Touch中的字符串对象是NSString
,它有一些方法可以帮到你。在这种情况下,最好的是stringWithFormat:
。这需要一个“格式字符串”,它描述了你想要的输出,以及插入到结果中的其他参数。
在这种情况下,您的格式字符串将为:@"%@ & %@"
。这是一个包含两个format specifiers的字符串文字 - 两个%@
。每个说明符指示应插入到字符串中的以下参数的类型 - 在本例中为任何类型的对象(与int
或float
相对)。字符串中的&
没有特殊含义 - 它将按原样显示在结果中。
要获得结果,请调用stringWithFormat:
,传递格式字符串和要插入的两个对象:
NSString * result = [NSString stringWithFormat:@"%@ & %@", [item objectForKey:@"Ball 1"], [item objectForKey:@"Ball 2"]];
现在您有一个字符串,可以将其分配给您的单元格text
:
[[cell detailTextLabel] setText:result];