Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

UITableViewCell without using deprecated method initWithFrame:reuseIdentifier

I have read Loren's article on drawing your own content for UITableViewCell. However, he is using a deprecated method: initWithFrame:reuseIdentifier: is deprecated on UITableViewCell.

How do you get his example to work without using initWithFrame:reuseIdentifier?

like image 274
Joo Park Avatar asked May 11 '10 23:05

Joo Park


2 Answers

just had to replace initWithFrame:reuseIdentifier: with the following.

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])
    {
        // you might want to add the UIView to [self contentView] 
        // so that in edit's the cell's content will be automatically adjusted.
        ABTableViewCellView *myUIView = [[ABTableViewCellView alloc] initWithFrame:CGRectZero];

        myUIView.opaque = YES;
        contentViewForCell = myUIView;
        [self addSubview:myUIView];
        [myUIView release];
    }

    return self;
}

Also, apple has an example as Loren points out but they use initWithStyle:reuseIdentifier:

http://developer.apple.com/iphone/library/samplecode/TableViewSuite/Introduction/Intro.html

like image 150
Joo Park Avatar answered Nov 08 '22 18:11

Joo Park


You can refer to this link to find the replacement for the deprecated method. Should be fairly easy to get the code working with the replacement. http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITableViewCell_Class/DeprecationAppendix/AppendixADeprecatedAPI.html

like image 32
Ben Williams Avatar answered Nov 08 '22 17:11

Ben Williams