Quando si imposta UITableViewCells backgroundColor
in un colore semitrasparente, sembra buono, ma il colore non copre l'intera cella.UITableViewCell sfondo trasparente (incluso imageView/accessoryView)
La zona intorno al imageView
e accessoryView
stanno arrivando come [UIColor clearColor]
...
Ho provato a fissare in modo esplicito il cell.accessoryView.backgroundColor
e cell.imageView.backgroundColor
essere dello stesso colore della cella di backgroundColor
, ma non funziona Mette una piccola scatola attorno all'icona, ma non si espande per riempire il bordo sinistro. Il lato destro non sembra essere influenzato da questo.
Come posso risolvere questo?
EDIT: Ecco il codice cella cruda:
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
cell.opaque = NO;
cell.textLabel.backgroundColor = [UIColor clearColor];
cell.backgroundColor = [UIColor colorWithRed:.1 green:.1 blue:.1 alpha:.4];
cell.textColor = [UIColor whiteColor];
}
cell.imageView.image = [icons objectAtIndex:indexPath.row];
cell.textLabel.text = [items objectAtIndex:indexPath.row];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
return cell;
}
in realtà dovevo fare ancora una cosa. È necessario impostare cell.textLabel.backgroundColor * AFTER * sul colore di sfondo della cella. Non ho idea del motivo per cui ho bisogno di farlo, ma ora funziona. Grazie Mike! –