2011-04-09 2 views
1

UIImageView (클래스 이름 고객)에서 파생 된 클래스를 생성했습니다. 이 고객 클래스에서 "touchesBegan"메서드를 구현했습니다.Cocoa iPhone SDK 개발 - UIImageView에 CABasicAnimation이 연결된 경우 touchesBegan 메소드가 작동하지 않습니다.

또한 Customer 클래스의 레이어에 CABasicAnimation을 적용했습니다. (애니메이션은 단순히 이미지 뷰를 이동합니다. animationDidStop 이벤트를 추적하기 때문에 필요합니다.)

문제는 이미지 뷰의 현재 위치를 터치 할 때 touchesBegan이 작동하지 않는다는 것입니다. 원래 프레임을 만졌을 때만 작동합니다 (생성 된 곳).

내 제안은 touchesBegan이 presentationLayer에 적용되지 않고 원래 프레임에 적용된다는 것입니다.

이 문제를 해결할 방법이 있습니까? 난 정말이 고객의 클래스 내에서 해결하고 싶습니다, 그리고 기본 UIViewController에서.

감사합니다. Shahar.

답변

0

userInteraction 플래그를클래스의 경우 YES으로 설정 했습니까?

감사합니다.

+1

예. 원본 프레임의 위치를 ​​클릭하면 작동합니다. 그러나 프레임이 CABasicAnimation을 통해 이동하면 presentationLayer가 변경됩니다. 프리젠 테이션 레이어 내에서 클릭을 포착하고 싶습니다. –

관련 문제