2012-08-17 12 views
1

mainView이라는 다른 UIView의 하위보기로 MKMapView를 사용했습니다. 내가와 y 축에 내 mainView을 전환하는 경우 :MKMapView가 제대로 전환되지 않습니다.

[UIView animateWithDuration:0.3 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{ 
    CGRect frame = self.mainView.frame; 
    frame.origin.y += 100.0f; 
    self.mainView.frame = frame; 
} completion:nil]; 
다음

mainView 모두가 파단 잘 원래 위치에 정확하게 머무는 MKMapView의를 제외하고, 100 점으로 화면을 전환합니다.

그래서 나는 또 다른 실험을 시도했고 MKMapView의 frame.origin.y도 옮겼습니다. 실제로는 맵보기를 움직 였지만 다른보기와 동기화되지 않았습니다 (약간의 지연이 있습니다).

누구나 그 이유는 무엇입니까? MKMapView가 직접 UIView 서브 클래스가 아니기 때문에 가정합니다. 이 문제를 해결할 수있는 방법이 있습니까?

+0

시뮬레이터에서이 기능을 사용하고 있습니까? 시뮬레이터에서 맵 크기를 조정할 때 이상한 크기 조정 문제가 발생했습니다. 장치에서 잘 작동합니다. –

+0

아니요. 장치에서 테스트되었습니다. – znq

답변

4

수정 됨. 문제는 부모 UIView의 속성이며 기본적으로 YES으로 설정되어 MKMapView과 함께 이상한 동작이 발생합니다. autoresizesSubviewsNO으로 설정하면 매력처럼 작동합니다.

+0

네, 고마워요! 그것은 지난 달 이후 이상하게 행동하고 있습니다. 똑같은 문제에 직면 해있는 사람들을 위해, 또한'Storyboard ->보기 선택 -> '속성 검사기보기'를 유틸리티에서 체크하고 Autoresize Subviews를 선택 해제하십시오. –

관련 문제