UITableView
の行の高さを、ユーザーの好みのテキスト サイズの変更に対応させたいと考えています。たとえば、好みのテキスト サイズが大きくなった場合、それに比例して行の高さを大きくしたいと考えています。これが私がこれまでに持っているものです:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.tableView reloadData];
// observe when user changes preferred text size
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(preferredContentSizeChanged:) name:UIContentSizeCategoryDidChangeNotification object:nil];
}
- (void)preferredContentSizeChanged:(NSNotification *)notification
{
[self.tableView reloadData];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellID = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID forIndexPath:indexPath];
// leverage Text Kit's Dynamic Type
cell.textLabel.font = [UIFont preferredFontForTextStyle:UIFontTextStyleHeadline];
cell.textLabel.text = @"All work and no play...";
return cell;
}
では、ユーザーの好みのテキスト サイズを反映する行の高さを計算する最良の方法は何でしょうか?