我正在实施Feed项目,基本上使用Three20 Twitter样本作为我的参考,但使用我自己的网站的api来获取XML响应..
我已经有了允许自己发布,删除提要的功能,但是当我拖动刷新TTTableViewController时,它不会更新表中的数据,它的作用是什么,它会回到我第一次出现的状态装了桌子。
来自第一个XML响应的数据是我将永远得到的。
- (void)load:(TTURLRequestCachePolicy)cachePolicy more:(BOOL)more {
if (!self.isLoading && TTIsStringWithAnyText(_apiKey) && TTIsStringWithAnyText(_sessionKey)) {
if(more) {
_pageNumber++;
}
else {
_pageNumber = 1;
_finished = NO;
[_feeds removeAllObjects];
}
NSString* url = @"api.mySiteHereWithParameters.com"
TTURLRequest* request = [TTURLRequest requestWithURL: url delegate: self];
request.cachePolicy = cachePolicy | TTURLRequestCachePolicyEtag;
request.cacheExpirationAge = TT_CACHE_EXPIRATION_AGE_NEVER;
TTURLXMLResponse* response = [[TTURLXMLResponse alloc] init];
response.isRssFeed = YES;
request.response = response;
TT_RELEASE_SAFELY(response);
[request send];
}
}
基本上当我拖动并刷新时,会调用它并返回到TTListDatasource并更新表视图,其他所有内容都使用three20框架处理
答案 0 :(得分:1)
这可能是缓存问题。我看到你正在使用etags缓存。你的服务器支持吗?必须在服务器端启用和配置它。
尝试使用标准缓存:
request.cachePolicy = cachePolicy;
request.cacheExpirationAge = TT_DEFAULT_CACHE_EXPIRATION_AGE;