我有以下代码将数据添加到数组中,但是当我显示数组时它只显示数组中的一个项目。难道我做错了什么?
基本上我有一个文本字段和一个按钮,当用户在字段中键入名称时,它应该被添加到数组中,但正如我上面所说的那样,当我运行nslog时只看到一个名字。
NSMutableArray *players = [NSMutableArray arrayWithObjects: nil];
[players addObject: self.playersnametext.text];
NSLog(@"%@", players);
}
答案 0 :(得分:0)
你的问题不是很清楚。假设您的文本字段中有CR或逗号分隔的名称,例如:
"name1, name2, name3"
将此字符串“拆分”为数组的简单方法是使用:
NSArray *players = [self.playersnametext.text componentsSeparatedByString:@", "];
希望有所帮助。有关详细信息,请参阅Apple documentation。
答案 1 :(得分:0)
如果您添加"玩家"像这样:
NSMutableArray *players = [NSMutableArray arrayWithObjects: nil];
[players addObject:@"player1"];
[players addObject:@"player2"];
[players addObject:@"player3"];
NSLog(@"%@", players);
你可以这样得到它们:
[players objectAtIndex:0]; //player1
[players objectAtIndex:1]; //player2
[players objectAtIndex:2]; //player3
答案 2 :(得分:0)
//Store names (multiple for each player)
NSMutableArray *playerNames = [NSMutableArray arrayWithObjects:
@[@"P1Name1",@"P1Name2",@"P1Name3",@"P1Name4"],
@[@"P2Name1",@"P2Name2",@"P2Name3",@"P2Name4"],
@[@"P3Name1",@"P3Name2",@"P3Name3",@"P3Name4"],nil];
//Fetch Names
[[playerNames objectAtIndex:0] objectAtIndex:0];
[[playerNames objectAtIndex:1] objectAtIndex:0];
[[playerNames objectAtIndex:2] objectAtIndex:0];
这是你要找的东西吗?为每个播放器存储多个名称,并根据索引(可以根据逻辑递增)提取它。