locationInView игнорирует ориентацию

координаты, возвращаемые uitouch locationInView, игнорируют ориентацию устройства -

У меня есть uiview, который правильно вращается, но locationInview всегда возвращается, как если бы он был портретным... представление переопределяет layerClass и предоставляет CEAGLLayer, но это все еще uiview

Есть ли что-то особенное, что мне нужно сделать? Или это просто стандартная практика определения ориентации и ручной настройки?

Спасибо за любую помощь/совет


person Robert Cober    schedule 13.08.2011    source источник
comment
Я думаю, вы пытаетесь получить местоположение вашего UIView. Это тронуло. Но где-то это супер или супер-супервью повернуто. Вот почему вы, locationInView, возвращает исходное местоположение в поле зрения, игнорируя его преобразование.   -  person Mohd Iftekhar Qurashi    schedule 14.04.2014


Ответы (2)


Убедитесь, что вы используете ViewController для представления хоста. Это должно заставить метод locationInView возвращать конкретные координаты ориентации.

person logancautrell    schedule 17.08.2011

Вид, из которого вы пытаетесь получить значение CGPoint, на самом деле не изменяется, даже если он ориентируется. Проверьте его значения кадра до и после изменения размера:

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