Я добавляю экземпляр UILabel
в качестве поднабора моего пользовательского UITableViewCell
экземпляра contentView
.
Когда я выбираю ячейку, строка подсвечивается синим цветом, за исключением фона метки. Текст ярлыка острый.
Когда я устанавливаю свойство backgroundColor
метки и содержимого backgroundColor
, текст ярлыка становится размытым.
Как установить цвет фона метки, чтобы он был прозрачным, чтобы подсветка строки прошла, сохраняя при этом текст ярлыка?
Одно из предложений, которое я прочитал в другом месте, это round
значения метки frame
, но это не имело никакого эффекта.
CODE
Вот фрагмент моего пользовательского метода UITableViewCell
subview -setNeedsLayout
:
UILabel *_objectTitleLabel = [[UILabel alloc] initWithFrame:CGRectNull];
_objectTitleLabel.text = [self.awsObject cleanedKey];
_objectTitleLabel.font = [UIAppDelegate defaultObjectLabelFont];
_objectTitleLabel.highlightedTextColor = [UIColor clearColor]; //[UIAppDelegate defaultLabelShadowTint];
_objectTitleLabel.backgroundColor = [UIColor clearColor]; //[UIAppDelegate defaultWidgetBackgroundTint];
_objectTitleLabel.frame = CGRectMake(
kCellImageViewWidth + 2.0 * self.indentationWidth,
0.5 * (self.tableView.rowHeight - 1.5 * kCellLabelHeight) + kCellTitleYPositionNudge,
contentViewWidth,
kCellLabelHeight
);
_objectTitleLabel.frame = CGRectIntegral(_objectTitleLabel.frame);
_objectTitleLabel.tag = kObjectTableViewCellTitleSubviewType;
//NSLog(@"_objectTitleLabel: %@", NSStringFromCGRect(_objectTitleLabel.frame));
[self.contentView addSubview:_objectTitleLabel];
[_objectTitleLabel release], _objectTitleLabel = nil;
...
self.contentView.backgroundColor = [UIAppDelegate defaultWidgetBackgroundTint];
self.contentView.clearsContextBeforeDrawing = YES;
self.contentView.autoresizesSubviews = YES;
self.contentView.clipsToBounds = YES;
self.contentView.contentMode = UIViewContentModeRedraw;