2009-07-17 9 views
0

D'accord, j'ai une application qui me dit quelle couleur de pixel j'ai touché en lisant l'écran (comme une capture d'écran) après chaque contact. Pour récupérer les pixels, j'utilise une méthode similaire à celle apparaissant here. Mais il semble que, après chaque contact, les données d'image sont toujours maintenues à (et sans oublier de sauver des centaines de captures d'écran indésirables dans mon album photo) et je commence à recevoir des notifications de mémoire peu avant que l'application se bloque finalement. ... Mon application commence à 3,5 Mo mais après chaque toucher ce chiffre augmente jusqu'à environ 100 Mo, après quoi l'application se bloque.Comment puis-je libérer ces ressources dans mon application iPhone?

QUESTION:
Comment puis-je libérer ces données après chaque contact?
(Here is the link nouveau pour Source)

+0

Vous n'avez pas fourni suffisamment d'informations pour répondre correctement à votre question. Le code que vous avez lié semble sain d'esprit, même si c'est trop compliqué pour lire la couleur d'un pixel. –

+0

bien, c'est le code que j'ai utilisé dans mon application. Je connais très peu le sujet des graphiques et des tampons, donc j'ai juste fait un copier-coller. Le code me permet d'obtenir des informations sur un pixel donné, mais comment libérer/libérer correctement les données (tampon?) Après chaque contact? – RexOnRoids

Répondre

1

Le code fourni libère tous ses tampons. La fuite de mémoire doit être ailleurs.

Si vous souhaitez utiliser une méthode plus simple de lecture de la couleur d'un pixel, vous pouvez envisager l'approche proposée dans this answer. L'idée est d'utiliser un très petit tampon et de dessiner la vue avec une transformation qui déplace le pixel dans la gamme couverte par le contexte.

Questions connexes