2011-01-03 2 views
0

Скажите,Почему добавление uilabels в несколько подзаголовков не работает?

UILabel * label = [[UILabel alloc] init]; ....

[view1 addSubview: label]; [view2 addSubview: label];

Не добавляетSubview сохраняет ссылку на текущую метку? То есть, у него есть своя копия UILabel, но почему ярлык отображается только на виде 2?

Спасибо.

ответ

1

Это не работает, потому что вид может иметь только 1 супервизор. Поэтому, если вы хотите иметь несколько экземпляров одного и того же ярлыка в разных представлениях, вам нужно создать копию своего ярлыка самостоятельно и добавить его в другой супервизор.

Цитата ссылки:

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

+0

Хмм, это то, что я пытался избежать создания экземпляра uilabel, но спасибо за объяснение. –

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