iOS应用。按字母顺序获取Facebook好友

时间:2011-10-22 19:12:59

标签: ios facebook

我已成功将iOs Facebook API集成到我的应用中。 现在,我想得到用户的好友。 为了得到它,我使用:

[facebook requestWithGraphPath:@"me/friends" andDelegate:self];

我实现了一个委托方法来接收它:

- (void)request:(FBRequest *)request didLoad:(id)result {

    uids = [[NSMutableArray alloc]init];
    if([result isKindOfClass:[NSDictionary class]])
    {
        NSLog(@"dictionary %@",result);
        result=[result objectForKey:@"data"];
        if ([result isKindOfClass:[NSArray class]]) 

            for(int i=0;i<[result count];i++){

                NSDictionary *result2=[result objectAtIndex:i];
                /*NSLog(@"resultq:%@",result2);

                NSString *result1=[result2 objectForKey:@"id"];
                NSLog(@"uid:%@",result1);*/

                Friend *f = [[Friend alloc] initWithDictionary:result2];
                [uids addObject:f];
                [f release];
            }
        NSLog(@"uids %@",uids);    
    }
}

所以我与用户的每个朋友一起创建了对象Friend。 我正确地得到了朋友,但随机顺序。

问题是,有没有办法按字母顺序接收用户的朋友?

1 个答案:

答案 0 :(得分:4)

不是按照字母顺序接收它们,为什么不下载所有这些后再重新安排好朋友阵列。这是比较数组并按字母顺序排序的最佳方法。

sortedArray = [anArray sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];

但是如果你想通过Friends类的属性/变量比较数组,即Name,你可以通过以下方式进行:

sortedArray = [anArray sortUsingSelector:@selector(name)];