Как мне нарисовать прямоугольник в пользовательском классе ячеек таблицы? Ячейка в настоящее время имеет фоновое изображение с несколькими текстовыми метками. Я хотел бы нарисовать прямоугольник за каждой из меток, чтобы их было легче читать на подробном фоновом изображении.
Я знаю, что могу просто установить цвет фона метки, но я хотел бы иметь отступ между цветом фона и текстом. Если это возможно, я хотел бы знать, как! :)
Я создаю подкласс TTTableMessageItemCell в Three20, вызывается метод ниже, в котором вы можете играть с подвидами ячейки,
- (void)layoutSubviews {
[super layoutSubviews];
CGFloat padding = 16;
CGFloat boxWidth = self.contentView.width - 2*padding;
CGFloat textWidth = boxWidth - (padding*2);
CGFloat textHeight = 100;
CGFloat top = kTableCellSmallMargin;
// Position Heading Text
_titleLabel.frame = CGRectMake(padding, top, textWidth, _titleLabel.font.ttLineHeight);
top += _titleLabel.height;
// Position Detail Text
[self.detailTextLabel sizeToFit];
self.detailTextLabel.top = top+2*padding;
self.detailTextLabel.left = 2*padding;
self.detailTextLabel.width = textWidth;
self.detailTextLabel.height = 100;
}
Я хотел бы, чтобы прямоугольники располагались за метками _titleLable и detailTextLabel.
edit Мне удалось добавить нужное поле, используя следующее:
UIView *view = [[UIView alloc] init]; view.backgroundColor = [UIColor whiteColor]; view.frame = CGRectMake(padding, top, textWidth, textHeight+2*padding); [self insertSubview:view belowSubview:self.detailTextLabel];
Он лежит поверх этикетки, и я не могу понять его за ним...
edit Я добавлял представление в неправильное подвид, исправил его с помощью
[[self.subviews objectAtIndex:0] insertSubview:view atIndex:0];