将int数组转换为titlesForSegmentAtIndex

时间:2013-07-19 13:40:39

标签: ios objective-c

我有一个自定义分段控件,您可以选择多个段并将选定的所选索引保存到数组中。我想要做的是每个int我想获得titleForSegmentAtIndex并将标题放入数组或字符串中,但我很难设置正确的循环。

这就是我现在所拥有的:

NSLog(@"%@", array);

打印:

(
    0,
    1,
    4
)

这是我的阵列:

NSMutableArray *array = [NSMutableArray array];
[self.type.selectedSegmentIndexes enumerateIndexesUsingBlock:^(NSUInteger idx, BOOL *stop) {
    [array addObject:@(idx)];
}];

我认为我需要使用[segmentControl titleForSegmentAtIndex:int] 但不知道如何将它融入循环中。

1 个答案:

答案 0 :(得分:1)

您需要创建NSMutableArray并在for ... in循环中添加标题。

NSMutableArray *titles = [NSMutableArray array];
for (NSNumber *index in array) {
    [titles addObject:[segmentedControl titleForSegmentAtIndex:index.integerValue]];
}

您还可以使用普通的旧for循环,但for ... in更清晰,更快。