Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用ASIHTTPRequest添加新源后获取重复源_Ios_Rss_Asihttprequest - Fatal编程技术网

Ios 使用ASIHTTPRequest添加新源后获取重复源

Ios 使用ASIHTTPRequest添加新源后获取重复源,ios,rss,asihttprequest,Ios,Rss,Asihttprequest,我正在开发一个应用程序,在一个tableview中显示来自多个网站的提要,用户可以在其中添加其他提要 我使用ASIHTTPRequest创建了基于以下内容的应用程序 所以,我的问题是,在我添加了一个新链接之后,在刷新方法之后,我从所有来源获得了重复的帖子 以下是我的viewDidLoad方法: - (void)viewDidLoad { [super viewDidLoad]; self.title =@"Lajmet"; self.navigationControll

我正在开发一个应用程序,在一个tableview中显示来自多个网站的提要,用户可以在其中添加其他提要

我使用ASIHTTPRequest创建了基于以下内容的应用程序

所以,我的问题是,在我添加了一个新链接之后,在刷新方法之后,我从所有来源获得了重复的帖子

以下是我的viewDidLoad方法:

- (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]如果您添加ASIHTTP的DelegateMethod以了解您正在对下载的数据执行的操作,则会非常有用。