Afficher une image dans un cell d'une TableView

[font=Verdana, Times, serif]Bonjour,[/font]



[font=Verdana, Times, serif]J'ai une TableView de style "[/font][font=Verdana, Times, serif]UITableViewStyleGrouped[/font][font=Verdana, Times, serif]".[/font]

[font=Verdana, Times, serif]Dans un des cell de cette TableView j'aimerai afficher une image (depuis une URL), malgré mes recherches je ne trouve rien.[/font]



[font=Verdana, Times, serif]Pourriez-vous m'éclairer sur ce point ?[/font]



[font=Verdana, Times, serif]Merci d'avance.[/font]

Réponses

  • Si tu es feignant comme moi:

    https://github.com/rs/SDWebImage


    <br />
    [cell.imageView setImageWithURL:[NSURL URLWithString:@&quot;http://www.domain.com/path/to/image.jpg&quot;]<br />
    				   placeholderImage:[UIImage imageNamed:@&quot;placeholder.png&quot;]];<br />
    
  • 'Mistunk' a écrit:


    Si tu es feignant comme moi:

    https://github.com/rs/SDWebImage


    <br />
    [cell.imageView setImageWithURL:[NSURL URLWithString:@&quot;http://www.domain.com/path/to/image.jpg&quot;]<br />
    				   placeholderImage:[UIImage imageNamed:@&quot;placeholder.png&quot;]];<br />
    





    Hum... Je me demande si c'est bien pensé pour l'utilisation dans une TableView. Car au moment où l'image sera fini d'être téléchargée, il se peut qu'entre temps l'utilisateur ait scrollé, et donc la cellule en question aura été réutilisée. Ce qui fait que l'image téléchargée ne se mettra pas sur la bonne ligne.
  • AliGatorAliGator Membre, Modérateur
    mars 2012 modifié #4
    Vu ce qui est expliqué dans le readme sur le lien donné, et vu les classes fournies (Downloader, Cache, Manager...), à  priori c'est pensé pour, puisqu'il gère un cache d'image et évite de retélécharger les images déjà  téléchargées.



    Donc si tu utilises correctement le recyclage des UITableViewCells bien sûr (mais ça de toute façon avec ou sans images asynchrones c'est un prérequis obligatoire), quand tu vas scroller ça devrait changer l'URL pour une nouvelle lors du recyclage, mais l'image correspondant à  l'ancienne URL devrait s'il a bien fait les choses continuer à  se charger, être mise en cache une fois téléchargée, et quand tu rescrolles être affichée directement.



    Enfin faudrait vérifier son code source, mais bon rien qu'en regardant le README et voyant les classes qu'il a prévues, ça semble avoir été bien fait et devrait donc marcher aussi avec une TableView.





    PS : Ceci dit ça fait plaisir de voir qu'il y en a qui pensent à  ce genre de choses comme JegnuX, alors que bien souvent c'est le genre de points à  côté desquels beaucoup de gens passent, et sur lesquels il faut souvent sensibiliser !
  • 'AliGator' a écrit:


    PS : Ceci dit ça fait plaisir de voir qu'il y en a qui pensent à  ce genre de choses comme JegnuX, alors que bien souvent c'est le genre de points à  côté desquels beaucoup de gens passent, et sur lesquels il faut souvent sensibiliser !




    J'te dis pas le nombre de fois où j'ai du sensibiliser Jegnux là  dessus image/grin.gif' class='bbc_emoticon' alt=';D' /> image/grin.gif' class='bbc_emoticon' alt=';D' /> image/grin.gif' class='bbc_emoticon' alt=';D' />
  • JegnuXJegnuX Membre
    mars 2012 modifié #6
    'AliGator' a écrit:


    Enfin faudrait vérifier son code source, mais bon rien qu'en regardant le README et voyant les classes qu'il a prévues, ça semble avoir été bien fait et devrait donc marcher aussi avec une TableView.




    J'avais pourtant regardé, mais ouai, à  2h du mat je suis passé à  côté. ^^

    Là  en 2-2 y'a le [manager cancelForDelegate:self]; qui saute de suite aux yeux dans sa category d'UIImageView image/biggrin.png' class='bbc_emoticon' alt=':D' />


    'ldesroziers' a écrit:


    J'te dis pas le nombre de fois où j'ai du sensibiliser Jegnux là  dessus image/grin.gif' class='bbc_emoticon' alt=';D' /> image/grin.gif' class='bbc_emoticon' alt=';D' /> image/grin.gif' class='bbc_emoticon' alt=';D' />




    Genre.
  • image/wub.png' class='bbc_emoticon' alt=' <3 ' />
Connectez-vous ou Inscrivez-vous pour répondre.