Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Here is another solution without subclassing cells, so it certainly works with different table styles. (I haven't checked other solutions.) The title and detail strings are declared in my UITableViewController header and already defined. They aren''t very long, certainly well within height 4000!</p> <pre><code>- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { CGRect frame = [UIScreen mainScreen].bounds; CGFloat width = frame.size.width; int section = indexPath.section; int row = indexPath.row; NSString *title_string = [title_strings_array objectAtIndex:row]; NSString *detail_string = [detail_strings_array objectAtIndex:row]; CGSize title_size = {0, 0}; CGSize detail_size = {0, 0}; if (title_string &amp;&amp; [title_string isEqualToString:@""] == NO ) { title_size = [title_string sizeWithFont:[UIFont systemFontOfSize:22.0] constrainedToSize:CGSizeMake(width, 4000) lineBreakMode:UILineBreakModeWordWrap]; } if (detail_string &amp;&amp; [title_string isEqualToString:@""] == NO ) { detail_size = [detail_string sizeWithFont:[UIFont systemFontOfSize:18.0] constrainedToSize:CGSizeMake(width, 4000) lineBreakMode:UILineBreakModeWordWrap]; } CGFloat title_height = title_size.height; CGFloat detail_height = detail_size.height; CGFloat content_size = title_height + detail_height; CGFloat height; switch ( section ) { case 0: height = content_size; break; //Just in case default: height = 44.0; break; } return height; } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload