2012-07-01 4 views
0

메신저에서 이미지를 가져 와서 CATransform3D로 원근감을 추가하는 것과 같이 비트를 조작하고 커플을 함께 합성하려고합니다. 메신저를 마친 후에는 파일을 메모리에 저장하여 필요할 때 (예 : 테이블 뷰 셀과 같이) 끌어 올릴 수 있습니다. 웹에서 이미지를 추출하고 CALayer를 만들어 조작했습니다. 약간의 독서 후,이 이미지가 필요 할 때까지 표시되지 않기 때문에이 작업을 올바르게 수행하는 방법에 대해 약간 혼란스러워하고 시스템 작업자가 작업하지 않도록 작업자 스레드에서 작업하고 싶습니다. 가장 좋은 절차는 무엇입니까?CALAyer 대 CGLayer 혼란 : 배경에서 이미지를 조작하고 저장하는 것

답변

0

Apple은 내부적으로 캐시하기 때문에 이미지를 캐시하지 않는 것이 좋습니다. 높은 메모리 부족에도 캐시가 제대로 작동한다는 것을 보장 할 수 있습니다.

setName:imageNamed: 방법을 통해 Apple 내부 캐시를 사용하여 이미지를 캐싱 할 수 있습니다. 또한 이미지의 로컬 사본을 캐시 디렉토리의 디스크에 저장해야 캐시가 지워지면 다시 다운로드 할 필요가 없습니다.

따라서 요약하면 이미지가 다운로드되지 않으면 디스크 캐시 디렉토리를 확인하지 않으면 imageNamed:을 사용하십시오. CALayer를 캐시하면 sooo가 훨씬 더러운 메모리가됩니다.

+0

왜 PNG/UIimage로 먼저 저장하고 싶습니다. 곧 캐싱을보고, 좋은 대답! – jfisk