Помогите мне с загрузкой изображений в виде таблицы с помощью NSOperationQueue - PullRequest
0 голосов
/ 22 февраля 2011

Пожалуйста, посмотрите приведенный ниже код .. я нашел в Интернете

- (void) loadData {

        NSOperationQueue *queue = [NSOperationQueue new];

        NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self 
                                                                                    selector:@selector(loadDataWithOperation)  object:nil];

        [queue addOperation:operation];

        [operation release];
     }


        - (void) loadDataWithOperation {

        NSURL *dataURL = [NSURL URLWithString:@"http://icodeblog.com/samples/nsoperation/data.plist"];

        NSArray *tmp_array = [NSArray arrayWithContentsOfURL:dataURL];

        for(NSString *str in tmp_array) {
        [self.array addObject:str];
        }

        [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:YES];
    }


    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

            static NSString *CellIdentifier = @"Cell";

            UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
            if (cell == nil) {
                cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
            }

            [cell.textLabel setText:[self.array objectAtIndex:indexPath.row]];

            return cell;
        }

Я нашел приведенный выше код, который загружает текст из Интернета без каких-либо проблем (я имею в виду графический интерфейс не висит) .likeмудро, я хочу загрузить изображения в табличное представление. для этого я написал следующий код.

- (void) loadDataWithOperation {

    NSString *Img_id, *Img_name, *DynamicImgUrl;

    Img_id = xmltag.equip_id;

    Img_name = xmltag.image;

    DynamicImgUrl = [NSString stringWithFormat:@"http://test.com/pics/equipment/%@/%@",Img_id, Img_name];

    NSURL *ImageUrl = [NSURL URLWithString:DynamicImgUrl];

    //UIImage *image = [UIImage imageWithData: [NSData dataWithContentsOfURL:ImageUrl]];

    NSArray *tmp_array = [NSArray arrayWithContentsOfURL:ImageUrl];

    for(NSString *str in tmp_array) {
        [self.array addObject:str];
    }

    [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:YES];
}

Я прав здесь?Как я могу пойти с добавлением в представление таблицы ...

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

1 Ответ

0 голосов
/ 22 февраля 2011

Вы стремитесь отображать изображения в Tableview с URL-адреса, когда вы загружаете изображение с URL-адреса, нам нужно рассмотреть некоторые проблемы, оно остановит просмотр таблицы, если вы идете с обычной загрузкой изображения.Я предлагаю вам взглянуть на изображение LazyLoading

вы видите эту ссылку http://developer.apple.com/library/ios/#samplecode/LazyTableImages/Introduction/Intro.html

Загрузите этот образец и узнайте все

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...