Reputation: 16758
Generally, table has a fixed row height but according to my requirements I need to set height of each row according to content within it.
Can anyone suggest me some solution for it?
Thanks,
Miraaj
Upvotes: 6
Views: 3621
Reputation: 16758
Thanks all for your suggestions and help. This problem is now resolved using following code in tableView:heightOfRow:
float colWidth = [[[tableView tableColumns] objectAtIndex:1]width];
NSString *content = [[[tempArray objectAtIndex:row] objectForKey:@"tValue"] string];
float textWidth = [content sizeWithAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[NSFont fontWithName:@"Lucida Grande" size:15],NSFontAttributeName ,nil]].width;
float newHeight = ceil(textWidth/colWidth);
newHeight = (newHeight * 17) + 13;
if(newHeight < 47){
return 47;
}
return newHeight;
Upvotes: 1
Reputation: 9618
The table view delegate protocol has a tableView:heightOfRow that lets you set the height of each row in the table view.
Upvotes: 6