UITableViewCell字体大小没有变化

时间:2011-01-12 15:36:06

标签: iphone ios fonts uitableview uifont

我正试图让我的UITableViewCell上的字体变小。这是我的代码:

- (UITableViewCell *)tableView:(UITableView *)theTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString* CellIdentifier = @"Cell";
    UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];

    UILabel *nameLabel; 
    UISwitch *mySwitch;
    if ( cell == nil ) 
    {
        cell = [[[UITableViewCell alloc] initWithStyle: UITableViewCellStyleDefault 
                                       reuseIdentifier: CellIdentifier] autorelease];

        nameLabel = [[[UILabel alloc] initWithFrame:CGRectMake( 220, 13, 100, 20 )] autorelease];
        nameLabel.tag = 22;
        nameLabel.font = [UIFont boldSystemFontOfSize: 5.0];
        nameLabel.textColor = [UIColor blueColor];
        nameLabel.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleHeight;
        nameLabel.backgroundColor = [UIColor clearColor];
        [cell.contentView addSubview: nameLabel];

        mySwitch = [[[UISwitch alloc] initWithFrame:CGRectZero] autorelease];
        mySwitch.tag = ((400*(indexPath.section+1))+indexPath.row);
        [mySwitch addTarget:self action:@selector(switchChanged:) forControlEvents:UIControlEventValueChanged];
        [cell addSubview:mySwitch];
        cell.accessoryView = mySwitch;


    }
    else {
        nameLabel = (UILabel*)[cell.contentView viewWithTag: 22];
        mySwitch = (UISwitch *)[cell.contentView viewWithTag:((400*(indexPath.section+1))+indexPath.row)];
    }

    nameLabel.textLabel.text = @"Hello";


}

但是标签的字体肯定不是大小5.它是正常的字体和正常大小,可能是字体大小12,或者默认值是什么。为什么我不能改变字体大小?

2 个答案:

答案 0 :(得分:2)

与您的问题无关,但无需将交换机添加为子视图。设置附件视图应将其添加到单元格并保留它。

    [cell addSubview:mySwitch];
    cell.accessoryView = mySwitch;

......应该只是......

    [cell setAccessoryView:mySwitch];

答案 1 :(得分:0)

试试这个

而不是nameLabel.textLabel.text = @"Hello";

使用

nameLabel.text = @"Hello";