Поверните uiimage вместо uiimageview. Отображение границ uiimageview так же, как и раньше, только изменение изображения - PullRequest
1 голос
/ 02 января 2012

Я хочу вращать изображение в просмотре изображения, используя прикосновения. Но при повороте изображения границы изображения должны быть не нарушены, только изображение должно быть повернуто. Кто-нибудь знает, как я могу это сделать. Я видел много примеров с использованием жестов, но я не могу использовать распознаватели жестов, так как я уже написал код для изменения размера uiimageview из углов с помощью касаний. Любая помощь приветствуется.

Ответы [ 2 ]

3 голосов
/ 02 января 2012

Я бы поместил UIImageView в UIView, на котором вы обрабатываете касания, и просто применил преобразование к UIImageView.Пока UIView не обрезает границы, он будет отображать весь UIImageView, и вы можете позволить взаимодействиям происходить на UIView.Границы также будут установлены в UIView.

Поворот UIImageView будет таким простым:

imageView.transform = CGAffineTransformMakeRotation(ANGLE_IN_RADIANS);
1 голос
/ 02 января 2012

Вы можете вращать объект UIImage в одиночку, установив свойство

@property(nonatomic, readonly) UIImageOrientation imageOrientation

Вы можете найти ориентации здесь http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/Reference/Reference.html.

Что касается изменения изображения при касании безиспользование распознавателей жестов, я не думаю, что это возможно.Но вы можете решить несколько распознавателей жестов в одном представлении, используя такие методы, как

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch

, доступные в протоколе UIGestureRecognizerDelegate.Я уверен, что вы можете указать, какие жесты должны делать то, что в вашем случае, не меняя представления и их иерархию.

...