PinYin4Objc 是一个非常流行的 objective-c 库,支持中文字符(包括简体和繁体)与大多数流行的拼音系统之间的转换,它的性能非常高效,数据在首次加载时缓存,您可以使用异步方法与块,这可以避免 UI 阻塞,并且运行顺畅。拼音的输出格式可以自定义。
*更新
2013-10-08, V1.1, 添加带有块的异步方法,解决 UI 阻塞问题并修复一些缓存错误;2013-09-16, V1.0, 首次发布。
1. 使用带有块的异步方法,这可以避免 UI 阻塞,并且运行顺畅
NSString *sourceText=@"我爱中文";
HanyuPinyinOutputFormat *outputFormat=[[HanyuPinyinOutputFormat alloc] init];
[outputFormat setToneType:ToneTypeWithoutTone];
[outputFormat setVCharType:VCharTypeWithV];
[outputFormat setCaseType:CaseTypeLowercase];
[PinyinHelper toHanyuPinyinStringWithNSString:sourceText
withHanyuPinyinOutputFormat:outputFormat
withNSString:@" "
outputBlock:^(NSString *pinYin) {
_outputTv.text=pinYin; //update ui
}];
2. 使用以下同步方法
NSString *sourceText=@"我爱中文";
HanyuPinyinOutputFormat *outputFormat=[[HanyuPinyinOutputFormat alloc] init];
[outputFormat setToneType:ToneTypeWithoutTone];
[outputFormat setVCharType:VCharTypeWithV];
[outputFormat setCaseType:CaseTypeLowercase];
NSString *outputPinyin=[PinyinHelper toHanyuPinyinStringWithNSString:sourceText withHanyuPinyinOutputFormat:outputFormat withNSString:@" "];
屏幕截图