2010-03-18 1 views
1

ввиду моего ViewController, я должен добавить пару пользовательских UIView-х, я сделать это в методе loadViewДобавления UIViews с динамическими высотами Iphone

так и в методе DrawRect моих пользовательских UIView, я добавлю пару UILabel лет.

ввиду моего ViewController, я должен добавить все те пользовательские UIView под ним друг друга, но я не знаю, что их высота

иногда 20px, 40px, 60px, в зависимости от исхода DrawRect

поэтому, когда я инициализировать мои пользовательские UIView я дать ему высоту кадра из позволяет сказать 50 .. но когда DrawRect сделано, и это только 20, 50 слишком много, поэтому мне нужно, чтобы отрегулировать высоту рамы

но как могу ли я определить, какая видимая высота пользовательского UIView и где я могу его поймать в моем представлении когда пользовательский uiview завершил свой метод drawRect

есть какой-то авторезистент и где я могу его поймать в моем диспетчере просмотра, поэтому я могу позиционировать пользовательский uiview прямо под ней.

ответ

0

Рассмотрите возможность использования свойства tag UIView в качестве способа доступа к вашим динамически созданным представлениям после выполнения drawRect. На этом этапе вы сможете получить высоту динамически созданных представлений, обратившись к frame.size.height представления. Используйте это, чтобы расположить их друг к другу, как вам хочется.

Если вы предоставляете образцы кода того, что вы делаете, я или другие люди могут оказать вам более конкретную помощь.

Барт

+0

на самом деле он был бы вопрос больше похож, если добавить в моем loadView моего ViewController пользовательского UIView когда же я знаю, в моем ViewController, когда обычай UIView выполнил метод DrawRect –