2013-03-08 6 views
0

Когда я пытаюсьObjective-C получить позицию в IBOutlet

myLabel.frame.origin.x 

Это возвращающегося 0,000000. Как я могу получить точную позицию любого iboutlet?

Thanks

+0

вы спрашиваете, как получить абсолютную позицию по сравнению с предыдущим относительный (кадр относительно супервизора). – Till

ответ

0

Где вы это делали? Перед подключением розеток должен быть загружен вид контроллера контроллера. Безопасное место находится в awakeFromNib.

+0

Это должен быть комментарий, а не ответ. – rmaddy

+0

Я пытался сделать это с awakeFromNib, тот же результат – ItayAmza

2

Рамка представления относится к ее родительскому виду (супервизия). Для того, чтобы получить кадр относительно экрана, вы делаете:

CGRect screenRect = [myLabel convertRect:self.bounds toView:nil]; 

Чтобы получить фрейма относительно некоторой другой точки зрения, заменить nil с другой точки зрения.

+0

Абсолютный ... – ItayAmza

+0

@ItayAmza Я понятия не имею, что вы имеете в виду под этим. – rmaddy

+0

Я отвечал на вопрос Эдвина Искандара. во всяком случае, мой вопрос в том, как я могу получить абсолютную позицию. – ItayAmza

0

Пожалуйста, убедитесь, что ...

  1. Вы вызываете это после того, как СИБ был загружен (viewDidLoad, awakeFromNib, viewDidX)
  2. Вы подключили вид на СИБ в интерфейсе строителя.

Смотрите это руководство по библиотеке для разработчиков IOS для деталей о создании соединения с целью в вашем СИБ к IBOutlet ... Configuring the View Guide

+0

Моя проблема в том, что я хочу расположить UIBottunTypeContactAdd рядом с lable, поэтому я вызываю это в методе viewDidLoad – ItayAmza

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