CGAffineTransformMakeScale и CoreGraphics - PullRequest
2 голосов
/ 09 мая 2011

У меня есть UIView, переопределяющий метод drawRect:

Теперь, когда я делаю

view.transform = CGAffineTransformMakeScale(recognizer.scale,1.0);

все масштабируется; сам вид и все, что на нем нарисовано.

Но сейчас я бы хотел масштабировать только определенные вещи, нарисованные на нем. Можно ли нарисовать например? нарисовать в два разных слоя, а затем масштабировать только один конкретный слой?

К сожалению, нет возможности использовать разные виды - это работает намного хуже, я пытался ... (большой UIScrollView с видом над ним, нарисуйте вид сверху над scrollView - тогда прокрутка идет медленно - но если я рисую на UIScrollView напрямую, он работает хорошо).

Большое спасибо!

EDIT Второй подход:
- UIWindow
- UIView
--- UIScrollView <== это представление НЕ должно изменять размер в Transformation <br /> ---- UIView <== здесь, я рисую некоторые вещи с CoreGraphics <== должен быть изменен в Transformation <br />

Представление с основными графическими объектами имеет тот же размер, что и UIScrollView.contentSize, и всегда получает setNeedsDisplayInRect при прокрутке прокрутки ... но для меня это намного медленнее ...

...