iPhone - Использование CALayers вместо UIViews - PullRequest
2 голосов
/ 25 января 2012

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

И сегодня я вижу этот вопрос (в поисках чего-то другого): IPhone SDK: доступ к камере?

В принятом ответе я вижу, что его автор использует CALayers, чтобы нарисовать 4 под "представления" в главном представлении, но все это только на основе CALayers ...

Так мне интересно ... Почему? Это правильный способ сделать? Что может заставить меня использовать seblayers вместо subviews?

1 Ответ

2 голосов
/ 25 января 2012

Я использую как UIViews, так и CALayers. Это действительно зависит от того, что вы хотите и нужно. UIView использует CALayer в фоновом режиме, поэтому вы используете CALayers в любом случае. Обратите внимание, что в UIView есть свойство слоя типа CALayer. Тем не менее, кодирование напрямую с помощью UIView проще, но оно не раскрывает всех возможностей Core Animation. При написании кода с помощью CALayer вы познакомитесь с Core Animation и дюжиной других API.

Если вы просто заинтересованы в добавлении подпредставлений, подойдет любой из этих подходов. Вы можете подумать, что UIView скрывает некоторые детали реализации CALayer.

...