2014-09-06 46 views
0

如果用戶在iPhone設置中選擇了其他字體大小,我試圖使表視圖的內容能夠更改其字體大小。我設法通過把下面的代碼來實現它:爲表視圖內容提供動態類型

//(Start)Updating font size 
UIFont *font = [UIFont preferredFontForTextStyle:UIFontTextStyleBody]; 
cell.textLabel.font = font; 
//(END) 

但它不會自動更新表視圖的內容和我需要在其上點擊進行更改。我非常肯定我的解決方案不是正確的,所以你可以通過告訴什麼是實現我的目標的正確途徑來幫助解決問題。

下面是完整的代碼:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath(NSIndexPath *)indexPath 
{ 
static NSString * kGroupsTableViewCell = @"kGroupsTableViewCell"; 

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kGroupsTableViewCell]; 
if (cell == nil) { 
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kGroupsTableViewCell]; 
} 

TGroup * group = [self.groupsArray objectAtIndex:indexPath.row]; 
cell.textLabel.text = group.name; 

//(Start)Updating font size 
UIFont *font = [UIFont preferredFontForTextStyle:UIFontTextStyleBody]; 
cell.textLabel.font = font; 
//(END) 

if ([self.selectedGroups containsObject:group.uid]) { 
    cell.accessoryType = UITableViewCellAccessoryCheckmark; 
} else { 
    cell.accessoryType = UITableViewCellAccessoryNone; 
} 

return cell; 
} 

回答

0

你只需要訂閱的大小變化的通知,並重新加載表。

​​
+0

謝謝!一切正常! – 2014-09-06 17:26:09