获取SegmentedControl对象的选定项的值

时间:2011-02-06 11:36:58

标签: iphone objective-c xcode uisegmentedcontrol

出于美观原因,我在分段控件上显示货币符号,但我想以3个字母返回货币代码。看看我是怎么做到的:

NSArray *itemArray = [NSArray arrayWithObjects: @"EUR", @"USD", @"GBP", nil];
self.writePriceCurrency = [[UISegmentedControl alloc] initWithItems:itemArray];

[self.writePriceCurrency setTitle:@"€" forSegmentAtIndex:0];
[self.writePriceCurrency setTitle:@"$" forSegmentAtIndex:1];
[self.writePriceCurrency setTitle:@"£" forSegmentAtIndex:2];

我知道我可以在函数中switch() {}捕获值的更改并根据索引返回正确的代码,但这将是硬编码的。我希望直接这样做,这样我以后就可以动态地改变分段控制。

你能帮我理解我们如何得到与所选片段相对应的项目吗?

1 个答案:

答案 0 :(得分:0)

当键是符号时,也许你可以初始化NSDictionary,然后通过循环遍历键来初始化段。
那么,你可以使用[yourNSDictionary objectForKey:key:]来获取捕获值变化的函​​数中的正确货币代码。