尝试设置UILabel文本时,UIImage消失

时间:2014-07-12 04:11:13

标签: ios objective-c uitableview

我使用此代码初始化UITableView中的文本标签:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSString *CellIdentifier = [menuItems objectAtIndex:indexPath.row];
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    [cell.textLabel setText: [menuTitlesEN objectAtIndex:indexPath.row]];
    return cell;
}

我的表包含四个静态单元格,每个单元格包含一个UIImageView和一个UILabel。

当没有调用setText时,我的表看起来应该是:

Screenshot 1

但是调用setText会导致UIImage以某种方式消失:

enter image description here

非常 iOS开发新手。任何人都可以指导我朝正确的方向发展吗?

2 个答案:

答案 0 :(得分:1)

尝试这样可能会有所帮助

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

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    cell.imageView.image = [UIImage imageNamed:@"Image name that you have"];
    [cell.textLabel setText: [menuTitlesEN objectAtIndex:indexPath.row]];
    return cell;
}

谢谢

答案 1 :(得分:1)

由于您覆盖了默认单元格UILabelcell.textLabel)。因此,您最好将标记属性提供给UILabel中的自定义UITableViewCell,然后为其指定文字。

尝试类似:

UILabel *lbl = (UILabel*)[cell viewWithTag:identityOfUILabel];
[lbl setText: [menuTitlesEN objectAtIndex:indexPath.row]];