Iphone 将字符串与ABPropertyID匹配
我现在正在使用AddressBook,需要将ABPropertyID的字符串表示形式转换(匹配)为ABPropertyID:Iphone 将字符串与ABPropertyID匹配,iphone,objective-c,ios,Iphone,Objective C,Ios,我现在正在使用AddressBook,需要将ABPropertyID的字符串表示形式转换(匹配)为ABPropertyID: @"kABPersonEmailProperty" -> ABPropertyID kABPersonEmailProperty; 我可以不使用ifs灵活地完成它吗 我可以不使用ifs灵活地完成它吗 不是真的。最简单的方法可能是手动准备一个映射到两者之间的NSDictionary。因为常量的名称不是编译程序的一部分,所以无法完全自动执行此操作 例如: NSDic
@"kABPersonEmailProperty" -> ABPropertyID kABPersonEmailProperty;
我可以不使用ifs灵活地完成它吗
我可以不使用ifs灵活地完成它吗
不是真的。最简单的方法可能是手动准备一个映射到两者之间的NSDictionary
。因为常量的名称不是编译程序的一部分,所以无法完全自动执行此操作
例如:
NSDictionary *mapping = [NSDictionary dictionaryWithObjectsAndKeys:
@"kABPersonEmailProperty", [NSNumber numberWithInteger:kABPersonEmailProperty],
@"kABPersonEmailProperty", [NSNumber numberWithInteger:kABPersonBirthdayProperty],
nil];
你到底是什么意思
ABPropertyID
定义为int32\u t
,即有符号32位整数。将字符串转换为同一类型并比较两者应该很容易。我收到一个字符串(例如@“KabbersoneMailProperty”),我应该创建一个适当的ABPropertyIDHm,我发现了一个类似的问题:但我不想使用字典,有没有办法让它与KeyValueCodeing一起工作?