0

私はUITableViewCell自分のアプリに持っています:

@interface ResultCell : UITableViewCell {
IBOutlet UILabel *name;
IBOutlet UILabel *views;
IBOutlet UILabel *time;
IBOutlet UILabel *rating;
IBOutlet UILabel *artist;

IBOutlet UIImageView *img;
}

@property (nonatomic, retain) UILabel *name;
@property (nonatomic, retain) UILabel *views;
@property (nonatomic, retain) UILabel *time;
@property (nonatomic, retain) UILabel *rating;
@property (nonatomic, retain) UILabel *artist;

@property (nonatomic, retain) UIImageView *img;

@end

そして、これらすべてがIBOutletXib ファイルでUILabel....に接続されています。

これは私が各セルを作成する方法です:

static NSString *CellIdentifier = @"ResultCell";
ResultCell *cell = (ResultCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil){
    UIViewController *vc = [[[UIViewController alloc] initWithNibName:@"ResultCell" bundle:nil] autorelease];
        cell = (ResultCell *) vc.view;
}

cell.name.text = item.name;
cell.views.text = item.viewCount;
cell.rating.text = [NSString stringWithFormat:@"%d%%",item.rating];
cell.time.text = item.timeStr;
cell.artist.text = item.artist;

ResultCellそして、クラスでdealocメソッドを実装して解放する必要があるかどうかを知りたいUILabelですか? それとも私がやったことのように大丈夫ですか?古いプロジェクトなので、非ARCを使用しています。

4

5 に答える 5

0

カスタム テーブル ビューセルのすべてのラベルを割り当てる必要がある場合は、 deallocメソッドで解放し、nil を割り当てる必要がある場合は、割り当てることができます。これによりviewDidUnload、メモリ リークが回避されます。

于 2013-05-08T09:10:27.920 に答える