使用Three20 Drag实现Feeds刷新;不更新

时间:2011-07-25 06:38:54

标签: iphone three20

我正在实施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框架处理

1 个答案:

答案 0 :(得分:1)

这可能是缓存问题。我看到你正在使用etags缓存。你的服务器支持吗?必须在服务器端启用和配置它。

尝试使用标准缓存:

request.cachePolicy = cachePolicy;
request.cacheExpirationAge = TT_DEFAULT_CACHE_EXPIRATION_AGE;