【发布时间】:2012-07-25 10:05:36
【问题描述】:
我正在尝试使用以下代码发布到用户朋友的 FB 墙上。我被困在这条线上:** NSString *post=[[delegate.array objectAtIndex:tag.tag] objectForKey:@"id"];
**
错误消息:“在“AppDelegate”类型的对象上找不到属性数组
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
//Call the request method
[[delegate facebook] requestWithGraphPath:@"me/friends" andDelegate:self];
// get the array of friends
NSArray *data = [result objectForKey:@"data"];
// Check that the user has friends
if ([data count] > 0) {
NSMutableArray *array = [NSMutableArray array];
for (int i = 0; i < data.count; i++){
id object = [data objectAtIndex:i];
[array addObject:[object objectForKey:@"name"]];
}
NSLog(@"list of friends %@", array);
NSString *Message = [NSString stringWithFormat:@"-posted via iPhone App"];
NSMutableDictionary *params1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:
Message, @"message", nil];
NSString *post=[[delegate.array objectAtIndex:tag.tag] objectForKey:@"id"];
[[delegate facebook] requestWithGraphPath:[NSString stringWithFormat:@"/%@/feed",post] andParams:params1 andHttpMethod:@"POST" andDelegate:self];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message!" message:@"Message Sent" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
[alert release];
【问题讨论】:
-
查看您的 AppDelegate.h,那里应该有一个声明的属性
NSArray *array,如果缺少,请添加它。并在您的实施中综合 -
谢谢。解决了数组警告。那么 NSString *post=[[delegate.array objectAtIndex:tag.tag] objectForKey:@"id"];我现在得到未声明的标识符“标签”。谢谢
-
您还有两个称为数组的数组。我建议将它们命名为更有帮助的名称
-
你必须声明那个标签,比如
int tag和.tag,我相信它是一个错误的类型。 -
什么是标签?它有标签属性吗?
标签: iphone objective-c ios facebook facebook-graph-api