2011-08-13 12 views
12

współrzędne zwracane przez locationInView uitouch są ignorując orientacji urządzenia -locationInView orientacji ignorując

Mam UIView, że prawidłowo się obraca, ale zawsze wraca locationInview jakby to portret ... widok przesłania layerClass i zapewnia CAEAGLLayer ale jest nadal uiview? Czy muszę coś konkretnego zrobić? A może standardową praktyką jest wykrywanie orientacji i ręczna regulacja?

Dzięki za wszelką pomoc/poradę

+0

Myślę, że próbujesz uzyskać lokalizację swojego UIView. To jest wzruszające. Ale gdzieś jest super lub super-> podgląd jest obracany. Z tego powodu funkcja locationInView zwraca oryginalną lokalizację w widoku ignorując jej przekształcenie. –

Odpowiedz

0

Upewnij używasz ViewController do widzenia gospodarza. To powinno uzyskać metodę locationInView, aby zwrócić współrzędne specyficzne dla orientacji.

0

Widok, z którego próbujesz uzyskać wartość CGPoint, w rzeczywistości nie jest zmieniany, nawet jeśli może być zorientowany. Sprawdź jego wartości klatek przed i po zmianie rozmiaru:

NSLog(@"Rect Of View = %@",[[NSRectValue valueWithCGRect:yourView.frame] debugDescription]);