在iOS開發(fā)中我們可能會需要展示一些如蘋果自帶通訊錄(A~Z)索引式的選項列表,有時候可能還會需要在列表中加入選擇功能。在我們做列表的時候,如果這些列表的內(nèi)容是英文的話,我們很好處理,直接截取第一個英文字母就可以輕松地匹配索引,至于每個索引下的排序,我們也可以調(diào)用iOS數(shù)組的字符串排序做到正確排序。但我們在日常開發(fā)中一般接觸到的都是中文內(nèi)容,該怎么做成這種索引列表呢?肯定是要做些處理的。首先,我們應(yīng)該把這些中文內(nèi)容全部轉(zhuǎn)成拼音,再根據(jù)拼音來做索引匹配,拼音索引匹配就跟英文一樣了。漢字轉(zhuǎn)拼音,我用了一個第三方庫(PinYin4Objc),不過我稍微做了一些改動,就是關(guān)于緩存的,可以比對源碼就知道了。通過這個庫,我把漢語內(nèi)容轉(zhuǎn)換成了拼音然后進(jìn)行索引匹配,把列表呈現(xiàn)出來,而且通過拼音轉(zhuǎn)換,在搜索的時候也可以支持拼音搜索甚至首字母結(jié)合式的模糊搜索。具體效果可以訪問源碼自己跑一下點點就知道了。AZChoicesList

