首页 > 代码库 > 如何在泰国#组联系人列表中的联系人姓名分类?
如何在泰国#组联系人列表中的联系人姓名分类?
联系人姓名开头的数字被放置在“#”默认情况下。如果你想显示联系人的姓名在泰国在底部并创建一个新的“#”组,修改如下:
在接触到的名字显示在“#泰集团,包括接触的名字开始与“0~9,修改\ufff到\u0039。
如果是JB
1. 在 ContactsDatabaseHelper.java (packages\providers\contactsprovider\src\com\android\providers\contacts)
函数 updateRawContactDisplayName,
之前:
bindString(mRawContactDisplayNameUpdate, 6, sortKeyPrimary);
bindString(mRawContactDisplayNameUpdate, 7, sortKeyAlternative)
添加:
char a = sortKeyPrimary.charAt(0);
if( a >= ‘\u0E00‘ && a <= ‘\u0E7F‘ ) {
sortKeyPrimary = ‘\uFFFF‘ + sortKeyPrimary;
}
a = sortKeyAlternative.charAt(0);
if( a >= ‘\u0E00‘ && a <= ‘\u0E7F‘ ) {
sortKeyAlternative = ‘\uFFFF‘ + sortKeyAlternative;
}
2.在PhonebookIndex.cpp (external\sqlite\android)
函数 GetPhonebookIndex,
After
Add:
char a = sortKeyPrimary.charAt(0);
if( a >= ‘\u0E00‘ && a <= ‘\u0E7F‘ ) {
sortKeyPrimary = ‘\uFFFF‘ + sortKeyPrimary;
}
a = sortKeyAlternative.charAt(0);
if( a >= ‘\u0E00‘ && a <= ‘\u0E7F‘ ) {
sortKeyAlternative = ‘\uFFFF‘ + sortKeyAlternative;
}
2. 在 PhonebookIndex.cpp (external\sqlite\android)
函数 GetPhonebookIndex,
之后:
UChar c = out[0]
添加:
if(c == 0xffff){
out[0] = ‘#‘;
return 1;
}
编译命令
mm external/sqlite/android, mm external/sqlite/dist, mm packages/providers/ContactsProvider
拷贝到手机: libsqlite.so 到system/lib 和ContactsProvider.apk 到 system/app,重新启动,添加联系人.
KK
在KK 版本,作为谷歌,支持多种语言,联系人在泰国泰国字母顺序排列的。
:UChar c = out[0]
Add:
if(c == 0xffff){
out[0] = ‘#‘;
return 1;
}
编译命令
mm external/sqlite/android, mm external/sqlite/dist, mm packages/providers/ContactsProvider
拷贝到手机: libsqlite.so 到system/lib 和ContactsProvider.apk 到system/app,重新启动,添加联系人.
如何在泰国#组联系人列表中的联系人姓名分类?