Проблема с получением изображений с сервера - PullRequest
1 голос
/ 22 апреля 2011

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

NSString *filesContent = [[NSString alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://www.projects-demo.com/iphone/xml/Menu.xml"] ];

    DDXMLDocument *ddDoc = [[DDXMLDocument alloc] initWithXMLString:filesContent options:0 error:nil];
    DDXMLElement *ddMenu = [ddDoc rootElement];
    NSArray *ddChildren = [ddMenu children];

    for (int j = 0 ;j < [ddChildren count]; j++) {
        DDXMLElement *image1st = [[ddMenu elementsForName:[NSString stringWithFormat:@"cookingType%d",j+1]] objectAtIndex:0];
        for (DDXMLNode *n in [image1st children]) {
        //  if ([[n name] isEqualToString: @"cookingType"]) {
                MenuModel *model = [[MenuModel alloc] init];

                NSLog(@"image of cooking........%@",[n stringValue]);
                model.imgsrc = [n stringValue];
                [listofimages addObject:model];
                //ss
                //======
                NSData *mydata = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:model.imgsrc]];
            NSLog(@"printing    my data ....",mydata);
                UIImage *myimage = [[UIImage alloc] initWithData:mydata];

Я пытался напечатать nsDAta, но ничего не получилось.

1 Ответ

1 голос
/ 22 апреля 2011

Просто наблюдение, ваш NSLog для переменной myData пропускает% @, но не уверен, что это просто ошибка копирования и вставки или что-то, чего не показывает HTML.

Также попробуйте и войдите [myData length] может быть проблема с загрузкой.

Наконец, я бы порекомендовал вам делать все ваши URL-вызовы асинхронно.

Это будет выглядеть примерно так

`- (void) loadingThumnailFormURL: (NSString *) thumbnailURL {

[imageData release];
imageData = [[NSMutableData alloc] init];

NSURLRequest *urlRequest = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:thumbnailURL]];
NSURLConnection *urlConnection = [NSURLConnection connectionWithRequest:urlRequest delegate:self];

[urlRequest release];
[urlConnection start];

}`

Нет необходимости говорить, что вам необходимо реализовать методы делегата для NSURLConnection и захватить данные.

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