2011-12-28 5 views
1

У меня есть UIView с UIImageView в качестве подзаголовка. Размер UIImageView всегда больше, чем UIView, поэтому я устанавливаю clipToBounds = YES в UIView, пользователь может перетащить UIImageView. Представьте себе, что это фоторамка, UIView = Frame, UIImageView = Photo.clipsToBounds с проблемами CGAffineTransformRotate

Но после того, как я использую CGAffineTransformRotate, я обнаружил, что UIView на самом деле не на 100% вращается. Как вы видите на скриншоте, черная рамка принадлежит UIView с clipToBounds = YES, UIImageView повернут. Но эффект clipToBounds не вращается.

Это ссылка скриншот http://www.flickr.com/photos/[email protected]/6585836809/

Мой вопрос: Любое решение, так что я могу повернуть эффект clipsToBounds? Я попробовал masksToBounds, и результат все тот же.

+0

Я также сталкиваюсь с той же проблемой, может ли любой, кто имеет решение для этого –

ответ

0

Я только что потратил ~ 10 часов, пытаясь выяснить ту же проблему. Я думаю, что у меня есть хакерское решение. В принципе, оберните изображение в два UIViews и установите clipToBounds = YES на обоих.

Ваше мнение иерархия должна выглядеть

UIView (дополнительный вид)

. UIView (изображение контейнера)

. , UIImageView

Дополнительный вид и вид контейнера изображений должны иметь одинаковые размеры и клипы. ToBounds = YES. CGAffineTransform следует применять к дополнительному виду.

Смежные вопросы