2009-07-17 5 views
0

좋아요, 각 터치 후에 스크린 샷과 같이 화면을 읽음으로써 내가 터치 한 픽셀의 색상을 알려주는 앱이 있습니다. 픽셀을 가져 오려면 here과 비슷한 방법을 사용합니다. 그러나 각 터치 후 이미지 데이터는 여전히 (내 사진 앨범에있는 원치 않는 스크린 샷 수백 장을 저장하는 것을 언급하지 않기 위해)에 보관 중입니다. 그리고 앱이 마침내 중단되기 직전에 메모리 알림을 받기 시작합니다. ... 내 응용 프로그램은 3.5MB에서 시작하지만 각 터치 후 약 100MB가 될 때까지이 숫자가 증가하고 그 후에 앱이 다운됩니다.iPhone 응용 프로그램에서 어떻게 이러한 리소스를 해제 할 수 있습니까?

질문 :
터치 할 때마다이 데이터를 무료로 저장하려면 어떻게해야합니까?

+0

질문에 대한 답변을 제대로 제공하지 않았습니다. 연결된 코드가 정상적인 것처럼 보입니다. 심지어 한 픽셀의 색상을 읽는 데 총체적인 잔인 함이 있습니다. –

+0

글쎄, 내 애플 리케이션에서 사용하는 코드입니다. 나는 그래픽과 버퍼의 주제에 대해 거의 알지 못해서 복사와 붙여 넣기 만했다. 이 코드를 사용하면 주어진 픽셀에 대한 정보를 얻을 수 있지만 각 터치 후에 (버퍼?) 데이터를 적절하게 해제/해제하는 방법은 무엇입니까? – RexOnRoids

답변

1

제공된 코드는 모든 버퍼를 해제합니다. 메모리 누수는 다른 곳에 있어야합니다.

한 픽셀의 색을보다 능률적으로 읽으려면 this answer에 제안 된 방법을 고려할 수 있습니다. 아주 작은 버퍼를 사용하여 픽셀을 컨텍스트에서 다루는 범위로 이동하는 변환으로 뷰를 그립니다.

관련 문제