Sebastian,

If you doing a UITableViewCell subclass, you'll have issues using the built-in 
textLabel property if you want it to be positioned somewhere other than the 
locations provided by the built-in styles.

Your best bet is to add your own UILabel to the subclass' contentView.

@interface MyTableViewCell : UITableViewCell {
        UILabel *myOwnTextLabel;
}
@property (nonatomic, retain) UILabel *myOwnTextLabel;
@end

@implementation MyTableViewCell 
- (id)initWithStyle:(UITableViewCellStyle)style 
reuseIdentifier:(NSString*)reuseIdentifier {
        self = [super initWithStyle:style reuseIdentifier: reuseIdentifier];
        if (self) {
                CGRect r = self.contentView.bounds;
                r.origin.x = 30;
                r.origin.y = 5;
                r.size.width -= 50;
                r.size.height -= 10;
                myOwnTextLabel = [[UILabel alloc] initWithFrame:r];

                [self.contentView addSubview: myOwnTextLabel];
                // Add your own UILabel to the content view
                // You'll ignore the built-in textLabel property and use your 
own, myOwnTextLabel.
        }
        return self;
}

- (void) dealloc {
        [myOwnTextLabel release]; myOwnTextLabel = nil;
        [super dealloc];
}

- (void) setText: (NSString *)text {
        myOwnTextLabel.text = text;
}
@end

On Aug 3, 2010, at 1:24 PM, sebi wrote:

> Hello,
> 
> In my project (iPad) I use a UITableViewCell subclass. The problem is, that 
> the built in textLabel doesn't show the text.
> Here is some test code:
> 
> -(void)setText:(NSString*)text {
>       CGRect r;
>       r.origin.x = 30;
>       r.origin.y = 5;
>       r.size.width = self.bounds.size.width - 50;
>       r.size.height = self.bounds.size.height - 10;
> //    self.textLabel.frame = r;
> //    self.textLabel.text = @"xxx";
>       UILabel* textLabel = [[UILabel alloc] initWithFrame:r];
>       textLabel.text = @"xxx";
>       [self addSubview:textLabel];
>       [textLabel release];
> }
> 
> when I uncomment the two lines and comment out the last three lines it 
> doesn't work, no text visible. The _textLabel member of the UITableViewCell 
> superclass is not nil and its parameters are set correctly.
> I mean, it works now (I have to make my textLabel a member and add it only 
> once as a subview of course) but I would still be interested what I am doing 
> wrong.
> 
> Thanks and regards,
> Sebastian Mecklenburg_______________________________________________

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to