2010-07-05 3 views
0

У меня проблема с моими табличными представлениями и данными с резьбой. в моем приложении im загружает данные в xml, включая URL-адрес изображения, который затем анализирует, чтобы получить изображение для моих табличных просмотров.проблема с асинхронными изображениями с резьбовыми данными

im использование класса asyncimageview (markj.net). если я нить загрузку моего xml, то realoadData ячейки отображаются отлично, appart формы изображения никогда не загружаются, пока они не будут разгружены и перезагружены, и я не знаю, как исправить это.

помогите пожалуйста .....

+0

Пожалуйста, вывесить соответствующий код из вашего cellForRowAtIndexPath: метод. – warrenm

ответ

0

хорошо мне удалось это исправить с помощью этого

- (void)loadImagesForVisibleCells; 

{ NSArray клетки = [self.newsStories visibleCells]; [ячейки сохраняются]; for (int i = 0; i < [cells count]; i ++) { // Пройдите через каждую ячейку массива и вызовите его метод loadContent, если он отвечает на него. CGRect frame; frame.size.width = 75; frame.size.height = 75; frame.origin.x = 0; frame.origin.y = 0; AsyncImageView asyncImage = [[[AsyncImageView alloc] initWithFrame: frame] autorelease];

//AsyncImageView *asyncImage = (AsyncImageView *)[[cells objectAtIndex: i] retain]; 
    //*flickrCell = (FlickrCell *)[[cells objectAtIndex: i] retain]; 
    NewcastleStories *aStory = [stories objectAtIndex:i]; 
    //AsyncImageView* asyncImage = [[AsyncImageView alloc]init]; 
    [asyncImage emptyImages]; 

    NSURL* url =[NSURL URLWithString:aStory.picture]; 
    [asyncImage loadImageFromURL:url]; 
    //[cells objectAtIndex:i]) 
    static NSString *CellIdentifier = @"ImageCell"; 
    UITableViewCell *cell = [newsStories dequeueReusableCellWithIdentifier:CellIdentifier]; 

    [cell.contentView addSubview:asyncImage]; 
    [[self newsStories]setNeedsLayout]; 
    [[self newsStories] setNeedsDisplay]; 
    //[self dataLoaded]; 
    //[asyncImage loadImage]; 
    //[flickrCell release]; 
    //flickrCell = nil; 
} 
[cells release]; 

}

, но он должен быть вызван в основном потоке с использованием

[self performSelectorOnMainThread:@selector(loadImagesForVisibleCells) withObject:nil waitUntilDone:YES]; 
Смежные вопросы