Problème avec NSView et NSURLConnection
Flo
Membre
Bonjour à tous,
J'ai un petit problème avec le téléchargement de mes données via NSURLConnection.
J'ai une NSImageView qui est sensée afficher la dernière image téléchargée. En fait la première fois que je lance le téléchargement, l'imageView n'affiche rien, ce n'est qu'à partir du deuxième téléchargement que les images s'affichent :crackboom:-
Tenez-vous bien, si j'y vais au debugueur, l'image s'affiche bien dés la première fois, c'est à n'y rien comprendre...
J'ai essayé avec setNeedsDisplay, sans résultats... pleaze :why?:
J'ai un petit problème avec le téléchargement de mes données via NSURLConnection.
J'ai une NSImageView qui est sensée afficher la dernière image téléchargée. En fait la première fois que je lance le téléchargement, l'imageView n'affiche rien, ce n'est qu'à partir du deuxième téléchargement que les images s'affichent :crackboom:-
Tenez-vous bien, si j'y vais au debugueur, l'image s'affiche bien dés la première fois, c'est à n'y rien comprendre...
<br /><br />// lancement de la requête dans le thread principal<br /><br />self.graphConnection = [[NSURLConnection alloc] initWithRequest: graphRequest delegate: self];<br /><br />// delegate<br /><br />- (void) connection: (NSURLConnection *)connection didReceiveData: (NSData *)aData<br />{ <br /> if (connection == graphConnection)<br /> {<br /> NSImage *aGraph = [[NSImage alloc] initWithData: aData];<br /> <br /> [addSheetGraphView setImage: aGraph];<br /> <br /> [aGraph release];<br /> }<br />}<br /><br />
J'ai essayé avec setNeedsDisplay, sans résultats... pleaze :why?:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Le message didReceiveData peut être appelé plusieurs fois. A chaque appel, il faut concaténer les nouvelles données reçues avec les données déjà reçues.
Ce n'est que dans la méthode connectionDidFinishLoading que tu es certain d'avoir tout reçu et que tu peux lancer l'affichage.
Pour plus d'infos, voir la Documentation de référence de NSURLConnection
ça m'apprendra à ne pas lire entièrement la doc d'une classe que je ne connais pas ! :)beta:
Merci pour ton aide en tous cas