将好友列表按拼音排序
2013-03-06 12:45
232 查看
随着应用的社交性需求的增加,你的应用也无法避免的要加入好友列表。但好友太多怎么办?就需要将好友的名字按拼音来排序。下面我就讲一下如何将一个数组中的若干好友的dictionary按名字拼音排序:
[_friendObjectArray sortUsingFunction:friendSortFuc context:nil];上面这句代码会调用一个名为 friendSortFuc的方法来使_friendObjectArray变得有序。
下面是这个方法的实现:
static NSInteger friendSortFuc(NSDictionary *oneDic, NSDictionary *otherDic, void *context) {
Pinyin *pinyin = [Pinyin getInstance];
NSString *oneNamePinyin = [pinyin.map objectForKey:[[oneDic objectForKey:@"user_name"] substringToIndex:1]];
NSString *otherNamePinyin = [pinyin.map objectForKey:[[otherDic objectForKey:@"user_name"] substringToIndex:1]];
if (oneNamePinyin == nil) {
oneNamePinyin = @"~";
}
if (otherNamePinyin == nil) {
otherNamePinyin = @"~";
}
return [oneNamePinyin compare:otherNamePinyin options:NSStringEnumerationByWords];
}
代码中的Pinyin类,已经有前辈准备好了,从这里下载:
http://www.cocoachina.com/bbs/read.php?tid-38851-page-1.html
在使用pinyin.map前,你需要load拼音表:
Pinyin *pinyin = [Pinyin getInstance];
if (pinyin.map == nil) {
[pinyin loadMap];
}
这样,_friendObjectArray就已经按照姓的拼音排好序了!简单吧~
相关文章推荐
- 将好友列表按拼音排序
- 谁知道QQ好友列表是怎么排序的?
- select 下拉列表内容按拼音排序
- 如何把列表转内容转至拼音首字母归档排序
- 最简单的对Java List列表按中文拼音排序的实现方式
- JS select列表内容按拼音排序
- 最简单的对Java List列表按中文拼音排序的实现方式
- 自定义listView,仿微信好友列表,右侧带字母排序。
- 【IOS开发】搜索和排序(好友列表,通讯录的实现,searchbar)
- 安卓城市选择,列表显示,拼音排序,滑动选择。
- iOS 开发 排序问题 (好友列表,按字母排序)
- Java 字符串列表拼音排序功能类
- 电信网通全国DNS 列表 (按拼音排序, 共32条)
- 含中文的List列表按中文拼音排序的实现方式 Java
- Java 字符串列表拼音排序功能类
- 电信网通全国DNS 列表 (按拼音排序, 共32条)
- 好友列表排序,分组
- Qt之实现好友列表
- python 字典排序,列表排序详细
- 部分随笔(SQL按照特定顺序排序、按照拼音排序)