2013-05-02 3 views
1

У меня есть простое тестовое приложение, которое имеет один вид, один контроллер представления, и все это создается через стандартную раскадровку. Когда я запускаю мое приложение и сделать паузу на контрольной точке, на мой взгляд контроллера я могу видеть, что следующие значения устанавливаются на представлении:Что определяет начальное значение CALayer.position?

self.view.layer.position = (CGPoint) (x=160, y=294) 
self.view.layer.frame = (CGRect) (origin=(x=0, y=20) size=(width=320, height=548)) 
self.view.layer.visibleRect = (CGRect) (origin=(x=0, y=0) size=(width=320, height=548)) 

Я понимаю, начальное значение происхождения для кадра (предполагая, что значение 20 смещение для строки состояния), но где значение 160/294, исходящее из позиции слоя? Я смущен этим.

ответ

3

Это связано с тем, что свойство позиции CALayer относительно anchorPoint. По умолчанию для параметра anchorPoint установлено значение (0.5, 0.5), которое представляет собой центр границ слоя.

Если вы пытаетесь выполнить очень простые изменения позиционирования программно, я бы держался подальше от свойства слоя вашего вида, так как UIView имеет собственные свойства позиционирования.

+0

, что делает тонны смысла. спасибо за четкое объяснение! – jgraves

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