2016-10-26 3 views
1

Я хочу динамически генерировать текстовые поля под своим статическим текстовым полем.Найти, где именно элемент с быстрым

Давайте предположим, что у меня есть текстовое поле в этом положении: х: 50 у: 374 ширина: 220 высота: 30

Я использовал этот код, чтобы увидеть, что он будет возвращать:

print(mytextfield.center.y) // 500 
print(mytextfield.frame.origin.y) // 0.0 

(Я использую swift 3)

Оба неправильно.

Любые идеи, где я ошибаюсь?

Заранее спасибо

+0

Большинство возможно, вы говорите о разных системах координат. Откуда у вас этот кадр: (x: 50 y: 374 width: 220 height: 30)? – alexburtnik

+0

@alexburtnik из раскадровки. –

+0

Можете ли вы добавить скриншот своей иерархии взглядов на вопрос? Просто откройте раскадровку, нажмите cmd + shift + 4 и выберите свою иерархию. – alexburtnik

ответ

2

Возможно, вы печатаете из viewDidLoad, в данный момент времени мнение еще не макет, вы должны напечатать это в viewWillAppear или viewDidLayoutSubview то вы можете получить правильный кадр

+0

Я тестировал оба, viewDidLayoutSubview работал! спасибо –

+0

@mikevorisis, если вы используете их для добавления subview, тогда просто создайте и добавьте subview в 'viewDidLoad', затем измените его кадр в функции others, позаботьтесь, чтобы' viewDidLayoutSubview' вызывал несколько раз, поэтому ничего не создавайте – Tj3n

+0

Я заметил это, и я сделал это , если flag1 == 0 { ypos = mytextfield.frame.origin.y flag1 = 1 } –

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

  • Нет связанных вопросов^_^