Ios 使用ASIHTTPRequest添加新源后获取重复源
我正在开发一个应用程序,在一个tableview中显示来自多个网站的提要,用户可以在其中添加其他提要 我使用ASIHTTPRequest创建了基于以下内容的应用程序 所以,我的问题是,在我添加了一个新链接之后,在刷新方法之后,我从所有来源获得了重复的帖子 以下是我的viewDidLoad方法:Ios 使用ASIHTTPRequest添加新源后获取重复源,ios,rss,asihttprequest,Ios,Rss,Asihttprequest,我正在开发一个应用程序,在一个tableview中显示来自多个网站的提要,用户可以在其中添加其他提要 我使用ASIHTTPRequest创建了基于以下内容的应用程序 所以,我的问题是,在我添加了一个新链接之后,在刷新方法之后,我从所有来源获得了重复的帖子 以下是我的viewDidLoad方法: - (void)viewDidLoad { [super viewDidLoad]; self.title =@"Lajmet"; self.navigationControll
- (void)viewDidLoad
{
[super viewDidLoad];
self.title =@"Lajmet";
self.navigationController.navigationBar.tintColor = [UIColor blackColor];
self.allEntries = [NSMutableArray array];
self.queue = [[NSOperationQueue alloc] init];
self.feeds = [NSMutableArray arrayWithObjects:@"http://pcworld.al/feed",@"http://geek.com/feed", @"http://feeds.feedburner.com/Mobilecrunch",@"http://zeri.info/rss/rss-5.xml",
nil];
[self.tableView reloadData];
[self refresh];
}
刷新方法如下所示:
-(void)refresh
{
for (NSString *feed in _feeds)
{
NSURL *url = [NSURL URLWithString:feed];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[_queue addOperation:request];
}
}
在这里,您可以看到应用程序的外观以及添加屏幕如何为新源工作。我配置了“完成”按钮,以便它自动添加一个提要来测试它是否工作
-(void)addSourcesViewController:(AddSourcesViewController *)controller didAddSource:(RSSEntry *)source
{
Source *newSource = [[Source alloc] init];
newSource.name = @"Test";
newSource.link = @"http://lajmeshqip.com/feed";
[self.feeds addObject:newSource.link];
NSLog(@"%@", self.feeds);
[self dismissViewControllerAnimated:YES completion:nil];
[self refresh];
}
所以我的问题是,在点击“完成”按钮后,所有条目都会被复制,并显示在tableview中。我尝试使用[self.tableView reloadData]代码>而不是[自刷新]代码>在上一个方法中,但是新链接根本不会出现
有没有一种方法可以使用ASIHTTPRequest或任何提示加载最后一个条目?我是新手,不知道该采用哪种方法。任何帮助都将不胜感激
非常感谢
Granit我假设单元格行是从self.allEntries创建的。因此,如果您在self.feed中添加了一个新源,在下载之前,请清理self.allEntries数组[self.allEntries removeAllObjects]因为在刷新方法中,您已经在重新加载所有提要。下载完成后,重新加载tableview数据。如果您添加ASIHTTP的DelegateMethod以了解您正在对下载的数据执行的操作,则会非常有用。