kABPersonEmailProperty

kABPersonEmailProperty

我现在正在使用通讯簿,我需要将ABPropertyID的字符串表示形式转换(匹配)为ABPropertyID:

@"kABPersonEmailProperty" -> ABPropertyID kABPersonEmailProperty;


我可以不使用ifs灵活地做到吗?

最佳答案

我可以不使用ifs灵活地做到吗?


并不是的。最简单的方法可能是手动编写在两者之间映射的代码中的NSDictionary。由于常量的名称不是已编译程序的一部分,因此无法完全自动执行此操作。

例:

NSDictionary *mapping = [NSDictionary dictionaryWithObjectsAndKeys:
    @"kABPersonEmailProperty", [NSNumber numberWithInteger:kABPersonEmailProperty],
    @"kABPersonEmailProperty", [NSNumber numberWithInteger:kABPersonBirthdayProperty],
    nil];

10-08 01:02