2012-09-29 28 views
2

我有一個搜索欄,您可以在其中搜索城市/國家/地區。我測試了它並搜索了東京。我的結果顯示在搜索顯示控制器的表格視圖中。這裏是我所得到的,當我搜索了「東京」,在表格視圖單元格提出了一個例子:CLGeocoder中的Unicode字符

This is a <code>UITableViewCell</code>

而且我有一個結合了電池的標題和副標題的字符串。然後,我將該字符串反轉爲地理編碼,但是我收到一個錯誤,因爲它無法識別'東京',因爲字母'''是一個unicode字符。

那麼有沒有辦法將此字符串/'o'轉換爲常規'o'或沒有unicode字符?或者有什麼辦法讓CLGeocoder能夠對這些類型的字符進行地理編碼:

謝謝!

回答

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; 
} 
+0

你能告訴我如何與一個NSString做這樣的一個例子,我不是很確定如何使這項工作 – MCKapur

+0

感謝您編輯的答案讓我看看 – MCKapur

+0

它不工作'東京'仍然顯示那樣... – MCKapur