0

私はスタイルのセルを持っていますUITableViewCellStyleSubtitle。したがって、オブジェクトが新しい場合、その画像を削除しない場合は画像を追加します。私はこれを試します:

if (something) {
            UIImage *img = [UIImage imageNamed:@"new.png"];
            cell.imageView.image = img;;
        }
        else
        {
            cell.imageView.image = nil;
        }

しかし、タイトルと字幕モードは左に。新しくない場合は空白が必要です。

私はこれを作ります:

if (something) {
        UIImage *img = [UIImage imageNamed:@"new.png"];
        cell.imageView.image = img;;
    }
    else
    {
        cell.imageView.image = nil;
        CGSize itemSize = CGSizeMake(25, 38);
        UIGraphicsBeginImageContext(itemSize);
        CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height);
        [cell.imageView.image drawInRect:imageRect];
        cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
    }

私の画像の幅と高さは25と38です。

それはうまくいきます、おそらくこれを達成するためのより簡単な方法です。

私はこれを達成したい:


 --
|  | TextLabel
 --  detailtext label

 --
|  | TextLabel
 --  detailtext label

 --
|  | TextLabel
 --  detailtext label

     TextLabel
     detailtext label

したがって、セルはまっすぐになります。新しいものではない場合は、画像はありませんがスペースがあります。新しい画像なら。

4

1 に答える 1

2

試す

 UIImage *img = [UIImage imageNamed:@"blankImage.png"];

の場所に

cell.imageView.image = nil;

blankImage.png はシンプルな白い画像です。

于 2013-10-30T12:13:13.117 に答える