Вызывает ли shouldRasterize на CALayer растеризацию до или после преобразования слоя?

Я пытаюсь оптимизировать свое приложение. Он довольно визуально богат, поэтому в нем довольно много многоуровневых UIView с большими изображениями и смешиванием и т. Д.

Я экспериментировал со свойством shouldRasterize на CALayers . В частности, в одном случае у меня есть UIView , который состоит из множества подвидов, включая таблицу. Как часть перехода, при котором прокручивается весь экран, этот UIView также масштабируется и вращается (с использованием преобразований).

Содержимое UIView остается статичным, поэтому я подумал, что имеет смысл установить view.layer.shouldRasterize = YES . Однако прироста производительности я не заметил. Может быть, он повторно растерирует каждый кадр с новым масштабом и поворотом? Я надеялся, что вначале он будет растеризован, когда у него есть матрица тождественного преобразования, а затем кешируется, когда он масштабируется и вращается во время перехода?

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

9
задан Joseph Humfrey 2 February 2012 в 09:25
поделиться