我已成功将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。 我正确地得到了朋友,但随机顺序。
问题是,有没有办法按字母顺序接收用户的朋友?
答案 0 :(得分:4)
不是按照字母顺序接收它们,为什么不下载所有这些后再重新安排好朋友阵列。这是比较数组并按字母顺序排序的最佳方法。
sortedArray = [anArray sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
但是如果你想通过Friends类的属性/变量比较数组,即Name,你可以通过以下方式进行:
sortedArray = [anArray sortUsingSelector:@selector(name)];