У меня есть две UILabel в XIB-файле, один поверх другого, содержимое которого загружается из исходного файла JSON в сети.
Учитывая, что я не уверен в количестве строк, которые будут занимать метки, и, следовательно, в высоте, как лучше расположить их относительно друг друга.
Я знаю, что в некоторых платформах Java GUI можно использовать различные элементы контейнера, и в HTML этот поток макетов будет использоваться по умолчанию, но я не могу найти ничего, что могло бы помочь.
Могу ли я сделать это в Интерфейсном Разработчике, или это должно быть сделано программно?
Спасибо за вашу помощь ..
Редактировать:
IТеперь есть ответ, хотя он не может быть идеальным.У меня есть две метки, titleLabel выше descLabel.Вот как я этого добился:
titleLabel.text = [data objectForKey:@"title"];
descLabel.text = [data objectForKey:@"description"];
CGSize s;
s.width = descLabel.frame.size.width;
s.height = 10000;
titleLabel.frame = CGRectMake(titleLabel.frame.origin.x,
titleLabel.frame.origin.y,
titleLabel.frame.size.width,
[[data objectForKey:@"title"] sizeWithFont:titleLabel.font constrainedToSize: s lineBreakMode:titleLabel.lineBreakMode].height
);
descLabel.frame = CGRectMake(descLabel.frame.origin.x,
titleLabel.frame.origin.y + [[data objectForKey:@"title"] sizeWithFont:titleLabel.font constrainedToSize: s lineBreakMode:titleLabel.lineBreakMode].height + 10,
descLabel.frame.size.width,
[[data objectForKey:@"description"] sizeWithFont:descLabel.font constrainedToSize: s lineBreakMode:descLabel.lineBreakMode].height
);
weffew