1
我有一个动态数组的字符串,我想要本地化的元素。有没有一种方法可以在不迭代的情况下本地化字符串,例如像使用“makeObjectsPerformSelector”。谢谢如何本地化数组中的所有字符串
我有一个动态数组的字符串,我想要本地化的元素。有没有一种方法可以在不迭代的情况下本地化字符串,例如像使用“makeObjectsPerformSelector”。谢谢如何本地化数组中的所有字符串
makeObjectsPerformSelector遍历数组。如果你想使用它而不是更快的迭代方法,请这样做:
@interface NSString (MyCategory)
-(void) localizeToArray:(NSMutableArray *)ioArray;
@end
@implementation NSString (MyCategory)
-(void) localizeToArray:(NSMutableArray *)ioArray {
[ioArray addObject:[[NSBundle mainBundle] localizedStringForKey:self value:self table:nil]];
}
@end
@interface NSArray (MyCategory)
-(NSArray *) arrayWithLocalizedStrings;
@end
@implementation NSArray (MyCategory)
-(NSArray *) arrayWithLocalizedStrings {
NSMutableArray *result = [NSMutableArray arrayWithCapacity:[self count]];
[self makeObjectsPerformSelector:@selector(localizeToArray:) withObject:result];
return result;
}
@end
谢谢。正如你指出的那样,迭代看起来更有吸引力。 – RunLoop 2010-05-25 06:01:30