正如标题所暗示的那样, myUICollectionView
不会在调用后立即更新和显示单元格reloadData
。相反,它似乎最终会在 30-60 秒后更新我的收藏视图。我的设置如下:
UICollectionView
添加到 Storyboard 中的视图控制器,delegate
并dataSource
设置视图控制器和标准插座设置
numberOfSectionsInRow
&cellForItemAtIndexPath
都实现并引用原型单元及其imageView
内部
这是转到 Twitter 的代码,获取时间线,将其分配给变量,重新加载带有推文的表格视图,然后通过推文查找照片并重新加载带有这些项目的集合视图。
即使我注释掉显示图像的代码,它仍然不会改变任何东西。
SLRequest *timelineRequest = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:SLRequestMethodGET URL:timelineURL parameters:timelineParams];
[timelineRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
if(responseData) {
JSONDecoder *decoder = [[JSONDecoder alloc] init];
NSArray *timeline = [decoder objectWithData:responseData];
[self setTwitterTableData:timeline];
for(NSDictionary *tweet in [self twitterTableData]) {
if(![tweet valueForKeyPath:@"entities.media"]) { continue; }
for(NSDictionary *photo in [[tweet objectForKey:@"entities"] objectForKey:@"media"]) {
[[self photoStreamArray] addObject:[NSDictionary dictionaryWithObjectsAndKeys:
[photo objectForKey:@"media_url"], @"url",
[NSValue valueWithCGSize:CGSizeMake([[photo valueForKeyPath:@"sizes.large.w"] floatValue], [[photo valueForKeyPath:@"sizes.large.h"] floatValue])], @"size"
, nil]];
}
}
[[self photoStreamCollectionView] reloadData];
}
}];