Fractal Posted April 1, 2011 Share Posted April 1, 2011 Bonjour, Dans l’article Painless Threading, ils expliquent que toutes les modifications de l’UI doivent se faire dans le thread principal, sinon ça risque de poser des problèmes bizarres et très difficiles à détecter. Pourtant, dans l’exemple Lunar Lander, ils utilisent une classe LunarView héritant de SurfaceView, dans lequel la boucle principale du jeu est assurée par un thread LunarThread, et c’est ce même thread qui s’occupe de l’affichage du vaisseau sur l’écran. Est-ce que les deux se contredisent ou est-ce qu’il y a quelque chose que je n’ai pas compris ? Et quelle est la bonne solution ? Peut-on modifier l’écran depuis la boucle principale qui tourne dans un thread à part (pour un jeu) ? Merci :-) Link to comment Share on other sites More sharing options...
chpil Posted April 4, 2011 Share Posted April 4, 2011 SurfaceView est l'exception qui confirme la règle, et peut effectivement être mise à jour depuis un thread secondaire Link to comment Share on other sites More sharing options...
Pierre87 Posted April 14, 2011 Share Posted April 14, 2011 Il n'y a pas de magie dans ce cas: pour pouvoir modifier la SurfaceView depuis un autre Thread, il est nécessaire de "lock"/"unlock" le Canvas Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.