android中文首字母排序,Android上汉字按拼音排序如何实现?
生活随笔
收集整理的這篇文章主要介紹了
android中文首字母排序,Android上汉字按拼音排序如何实现?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
具體的代碼在
packages\providers\contactsprovider\src\com\android\providers\contacts\ContactL
ocaleUtils.java中的ChineseContactUtils.getSortKey()方法中。
參考一下通訊錄的數據庫文件中的sort_key字段,一目了然。
具體的做法就是調用com.android.internal.util.HanziToPinyin工具,將名字轉換為拼
音,然后根據各種組合和首字母組合生成sort_key。
比如“水木”,生成的可能有"S?M"?"SHUI?M"?"SHUI?MU"?"M?S"?"MU?S"等等。
其實轉換為拼音除了Android提供的
frameworks\base\core\java\com\android\internal\util\HanziToPinyin.java以外,
Android中還提供了一個IBM提供的國際語言處理的庫ICU。這個庫更加強大。
【?在?chenmervyn?(神)?的大作中提到:?】
:?就像Contact(通訊錄)中的,姓名按拼音排序,并知道是什么拼音,進而分組,是如何
:?實現的?
:?PS:找了Contact源碼,太多,目前未果。求指點。
總結
以上是生活随笔為你收集整理的android中文首字母排序,Android上汉字按拼音排序如何实现?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言N*N的二维数组,c语言高手帮个忙
- 下一篇: android组件什么时候加载到r文件,