2012-11-22 1 views
5

UIImageView를 회전시키고 가운데에 유지하려고합니다. 아래 이미지에서 회전 된 화살표 (빨간색 십자선) 중심점이 0 ° 화살표 (파란색 십자선)의 중심점과 일치하도록하고 싶습니다.CGAffineTransformMakeRotation을 사용하여 같은 중심점을 사용하여 UIImageView를 회전하십시오.

다양한 앵커 포인트를 시도했지만 원하는대로 동작하지 못하는 것 같습니다.

// Rotate 
self.arrowRotatedImageView.layer.anchorPoint = CGPointMake(0.5,0.5); 
CGFloat angle = 45 * (M_PI/180); 
self.arrowRotatedImageView.transform = CGAffineTransformMakeRotation(angle); 

무엇이 누락 되었습니까? 나는 Apple docs 을 통해 읽고 있는데, 나는 그것을 알아낼 수 없었다.

iPhone screenshot of a rotated arrow on top of a non-rotated arrow

답변

6

는 이상한 회전 문제가 새로운 아이폰 OS (6) 자동 레이아웃 기능에 관련이 밝혀졌습니다. 정렬 제약이 어떻게 작동 하는지를 이해하기 위해 시간을 들여서 내가 원하는 결과를 얻을 수있었습니다.

이상한 순환 문제가 발생하고 iOS 6를 사용하는 경우 자동 줄 바꿈 기능을 사용하면 제약 조건을 조정해야합니다.

키는 부모보기에서 이미지를 세로 및 가로로 가운데에 맞 춥니 다.

+0

답을 보내 주셔서 감사합니다. 문제를 해결하기 위해 제약 조건에 대해 배운 내용을 공유 한 경우 귀하의 답변을 찾을 때까지 동일한 문제가 발생했습니다. – dreampowder

+9

. :) –

+2

그래, 또. 나는이 문제를 찾고 있었다. – huggie

2

동일한 문제가 발생하여 문제의 UIImageViewCenter X Alignment ConstraintCenter Y Alignment Constraint을 적용하여 해결했습니다. 이렇게하면 이미지가 가운데 x 및 y 위치에서 벗어나지 않습니다.