나는 그림과 텍스트 레이블 격자가있는 큰 화면 이동 및 확대/축소가 가능한 화면을 표시하는 iPhone 응용 프로그램에서 작업하고 있습니다. 나는 그림의 위치를 개별적으로 변경하고 레이블의 불투명도를 제어 할 수 있어야합니다. UIScrollView
및 Core Animation을 사용하여 이러한 목표를 달성하려고했습니다.부드러운 스크롤 CALayers가있는 UIScrollView
UIScrollView
의 하위보기에는 두 개의 주요 하위 레이어가 있습니다. 하나는 그림 표시 용이고 다른 하나는 레이블 용입니다. 그림은 CALayers
이고 콘텐츠 속성은 CGImage
으로 설정되어 있으며 사진 레이어의 하위 레이어로 추가됩니다. 라벨은 CATextLayers
이며 두 번째 레이어의 하위 레이어입니다. 레이블 레이어의 투명도는 스크롤 뷰의 확대/축소 배율에 따라 달라집니다. 레이블이 완전히 불투명하거나 완전히 투명 때 모든 것이 잘 작동하지만,이 때 반투명 스크롤 육포로 시작 FPS 아래 모든 감속이 층의 혼합 분명히 약 35로 떨어진다 :
그리고 여기 문제입니다 , 그러나 나는 그것을 고칠 방법을 찾지 못했습니다. 이 상황에서 성능을 향상시키는 방법에 대한 아이디어는 감사하겠습니다. 문자 레이블을 그릴 때 더 좋은 방법은CATextLayer
을 사용하는 것일 수도 있습니다.
레이블을 별도 레이어에 보관하여 모든 레이어의 투명도를 한 번에 조정할 수 있습니다. 하지만 직접 scrollview 하위 뷰의 레이어에 그림을 추가하고 조언을 주셔서 감사합니다 도움이되는지 확인하려고합니다. –
아, 알겠습니다. 하루가 끝나면 성능 문제는 항상 상황에 따라 다르므로 여러 가지 시도를 시도합니다. 그러나 Objective C 빠른 enumeration + 설정 alphas 개별적으로 컨테이너 레이어 및 불투명도를 변경하는 것보다 빠릅니다 (당신은 하나의 적은 레이어를 혼합 할 것).어쨌든 다른 질문이 있으면 알려주세요. –