Как я могу заставить вторую ячейку расширяться, чтобы соответствовать тексту, а не масштабировать текст?Есть ли встроенный способ сделать это в iOS, или мне нужно будет придумать какое-нибудь домашнее решение?Если вы загляните в приложение «Контакты iOS», для адреса есть поле, подобное этому.Я не могу найти, как это реализовать, хотя.
Для тех, кто хочет добиться этого в будущем, вот код моего решения:
Файл HEADER:
#define FONT_SIZE 22.0f
#define CELL_CONTENT_WIDTH 320.0f
#define CELL_CONTENT_MARGIN 5.0f
Файл РЕАЛИЗАЦИИ:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0 && indexPath.row == 1) {
NSString *text = [atmAnnotation address];
CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
NSLog(@"Size for address is Height:%f Width:%f",size.height,size.width);
CGFloat height = MAX(size.height, 44.0f);
return height + (CELL_CONTENT_MARGIN * 2);
}
return 44.0f;
}
Вот скриншот с результатом: