IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Objective-C Discussion :

Problème d'afficher l'image à partir d'un URL dans mon application iPhone.


Sujet :

Objective-C

  1. #1
    Candidat au Club
    Inscrit en
    Décembre 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Problème d'afficher l'image à partir d'un URL dans mon application iPhone.
    J'ai une application iPhone qui lit un fichier XML à partir d'un serveur, ce fichier contient les titres des articles, une description de chaque article et une image. La lecture du fichier XML se fait comme il faut et tous les champs sont accessibles (titre, description ...) même le champ de l'image. Quand je mets l'URL de l'image de mon XML dans une étiquette afin de vérifier si l'URL est analysée j’obtient l’URL sans problème. Le problème est que lorsque le imageView prend l'URL comme une source de l'image je ne reçois pas l'image, mais quand j'écris la même URL en tant que chaîne J'ai l'image. Voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    //  FirstViewController.m
     
     
    // Returns cell to render for each row
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
     static NSString *MyIdentifier = @"MyIdentifier";
     MyIdentifier = @"tblCellView"; 
     TableCellView *cell = (TableCellView *)[tableView dequeueReusableCellWithIdentifier:MyIdentifier];
     if(cell == nil) {
      [[NSBundle mainBundle] loadNibNamed:@"TableCellView" owner:self options:nil];
      cell = tblCell;
     }
     
    //Voici le Parser du XML
     item *aBook = [appDelegate.books objectAtIndex:indexPath.row];  
    //Creation of d l'image qui va prendre l'URL (aBook.image) comme source
    UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:aBook.image]]];
    [cell setDescpText2:aBook.title];
     [cell setLabelText:aBook.date];
     [cell setDescpText:aBook.description];
     [cell setProductImage:image]; 
    //Quand j’ecris le contenu du aBook.image dans une Label, l’URl s’affiche bien mais l’image n’apparit jamais.
     return cell;
    }
    Merci bien pour votre aide.

  2. #2
    Membre expérimenté
    Avatar de FloMo
    Homme Profil pro
    Freelance iOS
    Inscrit en
    Juillet 2004
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Freelance iOS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 726
    Points : 1 511
    Points
    1 511
    Par défaut
    La méthode n'est pas forcément idéale car l'interface va ramer énormément.

    L'idée serait plutôt de stocker les UIImage dans un dictionnaire (avec comme clé l'identifiant ou l'URL).

    Grâce à Grand Central Dispatch, on peut faire le téléchargement en parallèle de l'affichage.

    Donc, dans un premier temps, je teste si l'image recherchée est dans mon dictionnaire.
    Dans un second temps, si l'image est là, je l'affiche, sinon, je lance la procédure de téléchargement en parallèle.

    Durant le téléchargement, je récupère l'image à partir de l'URL. Une fois l'image récupérée, je peux recharger la cellule concernée qui, du coup, trouvera l'image dans le dictionnaire.

    Plus spécifiquement pour le problème de données, il est possible d'enregistrer les données reçues lors du téléchargement afin de valider leur contenu. Par exemple, en enregistrant l'image dans les documents du simulateur pour y accéder ensuite depuis OS X.
    "Il est plus facile de décomposer un problème en ses éléments, forcément plus simples, que de le traiter en sa totalité." (R. Descartes)

    Freelance iOS

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Afficher image et texte
    Bonjour,

    Je souhaite développer une petite application perso qui viendrait afficher des photos par rapport à une liste d'entre que j'ai mais je ne sais comment procéder.
    Connaissez vous un tuto qui pourrait m'aider.
    Je tiens à préciser que le nombre de photo pourrait dépasser les 15000 entrées
    Merci de votre aide

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/10/2008, 17h04
  2. Problème pour afficher une image bmp
    Par homeostasie dans le forum MFC
    Réponses: 6
    Dernier message: 08/05/2005, 18h36
  3. [MFC]Problème pour afficher une image.
    Par Deedier dans le forum MFC
    Réponses: 4
    Dernier message: 25/03/2005, 16h13
  4. Réponses: 13
    Dernier message: 23/12/2004, 18h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo