2011-05-16 2 views
0

나는 이것을 보았습니다. answer for how to convert point of a subview 그리고 시뮬레이터에서 완벽하게 작동했습니다.convertPoint : fromView : 장치가 아니라 시뮬레이터에서 잘 작동합니다.

하지만 어떤 이유로 장치에서 작동하지 않습니다 ... 보기 위치가 장치에 따라 다르게 관리 될 수 있습니까? 아니면 단지 다른 미스터리 일 수 있습니까?

CGPoint yoel = [imagePressed.imageView convertPoint:imagePressed.frame.origin toView:nil]; 

답변

2

OK : 또는 (희망) :

여기 내 라인 ... 내가 잘못 쓴 너희들은 도움이 될 수 있습니다. 그것은 % d와 % f의 차이점에 대한 교훈이었습니다. 분명히 완벽합니다.

내 실수였다 - 나는 DLog(@"yoel is %f", yoel.x); DLog(@"yoel is %f", yoel.y); 내가 CGPoint는 플로트에 있기 때문에, 내가 대신 올바른 좌표의 공을 가지고 DLog(@"yoel is %d", yoel.x); DLog(@"yoel is %d", yoel.y); 로 변경 단지 장치에서 실행하기 전에 ... 시뮬레이터에 미친

또 다른 교훈은 - 시뮬레이터에서 장치로 테스트를 전환하기 전에 코드를 변경하지 않으므로 사과를 비난하지 말고 직접 :

8

이 질문과 관련된 다른 문제가 있었는데, rect를 변환 할 때 화면의 눈금. (즉, 그것은 시뮬레이터 아니에요 때문에 시뮬레이터에 근무하지만, 시뮬레이터가 아닌 망막 모드에 있었기 때문에)

// the following convertRect is like asking a view: "what would one of your subviews (aView) have for a frame in my (toView) coordinate space if it were to become my subview? 
    _originalFrame = [[aView superview] convertRect: aView.frame toView: self]; 

    CGFloat scale = [[UIScreen mainScreen] scale]; 

    _originalFrame.origin.x /= scale; 
    _originalFrame.origin.y /= scale; 
    _originalFrame.size.width /= scale; 
    _originalFrame.size.height /= scale; 

    NSLog(@"Converted Frame: %@", NSStringFromCGRect(_originalFrame)); 
+2

내가 대신 CGRect''의 CGPoint''로,뿐만 아니라 있음을 발견하고 당신의 대답은이었다 맞아. 그러나 이것이 왜 일어나는 지 궁금합니다. 아마도 우리의 접근 방식에 뭔가 잘못된 것이 있을까요? – mokagio

관련 문제