Я бы порекомендовал оставаться стройным и проворным - ничего не делайте, пока вам это не понадобится, а затем позвольте вашей IDE выполнить для вас рефакторинг, когда вам это нужно.
Довольно просто в IDEA / eclipse превращать конкретный класс в интерфейс, когда вы решите, что он вам нужен.
Затем используйте внедрение зависимостей с помощью Spring или Guice , если у вас есть много реализаций интерфейса для внедрения в места в вашем коде, которые вы используете «new»
If both the other options didn't work try this
UIView *backView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];
backView.backgroundColor = [UIColor clearColor];
cell.backgroundView = backView;
Начните с этих статей, чтобы правильно настроить цвет фона:
http://pessoal.org/blog/2009/02/25/customizing-the-background-border-colors-of-a-uitableview/
Затем попробуйте все следующие строки:
[[cell contentView] setBackgroundColor:[UIColor clearColor]];
[[cell backgroundView] setBackgroundColor:[UIColor clearColor]];
[cell setBackgroundColor:[UIColor clearColor]];
В UITableViewCell скрывается несколько представлений. Это должно прояснить все на вашем пути.
У меня была проблема, когда мое пользовательское фоновое изображение tableviewcell было наложено белым фоном метки, я попробовал все и, наконец, установил чистый цвет фона в viewWillAppear.
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
self.tableView.backgroundColor = [UIColor clearColor]; // if this is not here, cell background image is covered with a white rectangle :S
}
и в rowForCellAtIndexPath Я установил фоновое изображение:
if(!cell) {
cell = [[[UITableViewCell alloc] initWithFrame: ...
UIImageView *cellBG = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"cellbg.jpg"]];
[cell setBackgroundView:cellBG];
[cellBG release];
}