2

我有一个搜索栏,您可以在其中搜索城市/国家/地区。我测试了它并搜索了东京。我的结果显示在搜索显示控制器的表格视图中。以下是我在表格视图单元格中搜索“东京”时得到的示例:

这是一个 <code>UITableViewCell</code>

我有一个字符串,它结合了单元格的标题和副标题。然后我对该字符串进行反向地理编码,但是我收到一个错误,因为它无法识别“东京”,因为字母“”是一个 unicode 字符。

那么有没有办法将这个字符串/'o'转换为常规'o'或没有unicode字符?或者有没有办法让CLGeocoder能够对这些类型的字符进行地理编码

谢谢!

4

1 回答 1

1

恕我直言,您需要删除字符串中的所有变音符号。

请参阅文档以供CFMutableString参考:

Boolean CFStringTransform (
   CFMutableStringRef string,
   CFRange *range,
   CFStringRef transform,
   Boolean reverse
);

transform参数设置为kCFStringTransformStripDiacritics

NSMutableString *StripDiacritics(NSString *string)
{
    CFMutableStringRef stringRef = (__bridge_retained CFMutableStringRef)[string mutableCopy];
    CFRange range = CFRangeMake(0, CFStringGetLength(stringRef));
    CFStringTransform(stringRef, &range, kCFStringTransformStripDiacritics, false);
    NSMutableString *result = (__bridge_transfer NSMutableString*)stringRef;
    return result;
}
于 2012-09-29T03:42:44.563 回答